Jak zwrócić tablicę JSON za pomocą butelki?

Piszę API używającButelka, który do tej pory był fantastyczny. Jednak podczas próby zwrócenia tablicy JSON uruchomiłem się przed niewielką przeszkodą. Oto mój kod aplikacji testowej:

from bottle import route, run

@route('/single')
def returnsingle():
    return { "id": 1, "name": "Test Item 1" }

@route('/containsarray')
def returncontainsarray():
    return { "items": [{ "id": 1, "name": "Test Item 1" }, { "id": 2, "name": "Test Item 2" }] }

@route('/array')
def returnarray():
    return [{ "id": 1, "name": "Test Item 1" }, { "id": 2, "name": "Test Item 2" }]

run(host='localhost', port=8080, debug=True, reloader=True)

Gdy uruchomię to i zażądam każdej trasy, otrzymam odpowiedzi JSON, których oczekiwałbym od dwóch pierwszych tras:

/pojedynczy

{ id: 1, name: "Test Item 1" }

/ includesarray

{ "items": [ { "id": 1, "name": "Test Item 1" }, { "id": 2, "name": "Test Item 2" } ] }

Spodziewałem się więc zwrotu listy słowników, aby utworzyć następującą odpowiedź JSON:

[ { "id": 1, "name": "Test Object 1" }, { "id": 2, "name": "Test Object 2" } ]

Ale prośba o/array trasa powoduje błąd. Co robię źle i jak mogę zwrócić tablicę JSON w ten sposób?

questionAnswers(2)

yourAnswerToTheQuestion