2

handler.py を作成しましたが、次のメソッドを作成したいと考えています: getBooksForUser()。このメソッドは、ユーザーが発行したすべての書籍を返します。ドキュメントには次のように書かれています:

これらに加えて、必要な他のメソッドを定義することができます。これらの名前を fields ディレクティブに含めることでこれらを使用できます。そうすることで、関数は 1 つの引数 (モデルのインスタンス) で呼び出されます。その後、何でも返すことができ、戻り値はそのキーの値として使用されます。

フィールドには、返品したい本の属性を書きました。ここだけにメソッド名 (getBooksForUser) を含めるべきですか?

可能であれば、コードの例を教えてください。

4

1 に答える 1

1

これはカスタムメソッドに関する質問には答えられないことは知っていますが、問題の解決に役立つかもしれません。

URL:

(r'^books\.json$', Resource(BookHandler)),
(r'^books/(?P<user_id>[0-9]+)\.json$', Resource(BookHandler)),

ハンドラ:

   from piston.handler import BaseHandler
   from myapp.models import Book

   class BookHandler(BaseHandler):
      allowed_methods = ('GET',)
      model = Book   

      def read(self, request, user_id=None):
          base = Book.objects
          if user_id:
              return base.filter(user_id=user_id)
          return base.all()

私はここのドキュメントから例を得ました:

于 2012-08-23T08:58:14.003 に答える