2017-06-22 4 views
0

Django RESTフレームワークはpkを使用します。 RetrieveApiViewを使用する場合はルックアップフィールドを持ち、URLはkwargsに定義する必要があります。Django RESTフレームワークでRetrieveAPIViewの検索kwargsフィールドのキーを変更するには?

これは、URLは次のようになります:

url(r'^(/foobar/(?P<pk>[\d]+)/$', FooBarFetch.as_view(), name="foo_bar") 

しかし、私はfoo_bar_idのようなより説明的なもので、URLにpkを交換したいです。

look_up_fieldを変更すると、まだ参照を実行するためにpkを使用する必要があるため、機能しません。

URLでちょうどkwragsキーを変更する必要があります。

答えて

5

私はクラスGenericAPIViewなどを掘り出したので、この目的のためにフィールドlookup_url_kwargを使用しています。

デフォルトでは、これはNoneであり、kwargキーはURLにpk となります。

は我々だけのようなフィールドを上書きする必要があります。

foo_bar_id

lookup_url_kwarg = 'foo_bar_id'

は、URLで使用する鍵です。

+0

これは道のりです。 – Linovia

関連する問題