3

と組み合わせたdjango-respiteを使用して REST API を実装しようとしていBackbone.jsます。私が持っているとします:

models.py:

class Books(models.Model):
      name = models.CharField(max_length = 100)
      author = models.CharField(max_length = 100)

および views.py :

from respite import Views

class BooksView(Views):


    def index(self, request)
    return self._render(
        request = request,
        template = 'index/index'
        context = dict(
            books = Books.objects.all()
        ),
        status = 200,
    )

book1 = Books.objects.create(name = 'foo', author = 'bar')
book2 = Books.objects.create(name = '123', author = 'abc')

を使用してフェッチするとTastypie、1 つのコレクションと 2 つのモデルが生成され、最初のモデルが保持book1され、2 番目のモデルがbook2その 2 つのモデルを保持するコレクションで保持されます。

using を使用してフェッチするrespiteと、モデルがコレクション (モデルの配列) のように機能する 1 コレクション 1 モデルと、その 1 モデルを保持するコレクションが生成されます。

とにかくこれを修正する方法はありますか?

4

1 に答える 1

0

休息の経験はありませんが、問題は、返される JSON dict が 1 つのキーを持つ辞書であり、その本のすべてのモデルであるということだと思います。

おそらくビューから配列を返したいだけなので、Backbone はそれがモデルのコレクションであると認識します。

だから変更:

context = dict(books = Books.objects.all()),

context = Books.objects.all(),

配列を返す必要があります(respiteが十分に賢い場合)。

于 2013-02-25T10:43:13.587 に答える