私が持っているbrowsable API:閲覧可能なapi_rootでミックスビューとビューセット
私は名前のルートにリンクすることができますapi_root
で
restaurant_router = DefaultRouter()
restaurant_router.register(r'rooms', RoomsViewSet)
restaurant_router.register(r'printers', PrintersViewSet)
restaurant_router.register(r'shifts', ShiftsViewSet)
urlpatterns = patterns('',
url(r'^$', api_root),
url(r'^restaurant/$',
RestaurantView.as_view(),
name='api_restaurants_restaurant'),
url(r'^restaurant/', include(restaurant_router.urls)),
)
:
@api_view(('GET',))
def api_root(request, format=None):
return Response({
'restaurant': reverse('api_restaurants_restaurant', request=request, format=format),
})
それともによって生成された閲覧可能なAPIを使用することができますDefaultRouter
(ドキュメントで説明されています):
私たちも使用しているDefaultRouterクラスGoogleでは ルートビューを自動的に作成するので、 ビューモジュールからapi_rootメソッドを削除できるようになりました。
ViewSet
と通常のビューを混在させて、同じAPIルートにすべてを表示するにはどうすればよいですか? DefaultRouter
には、制御するViewSet
がリストされています。
「ビューセットと通常のビューを混在させる」とはどういう意味ですか?あなたは正確に何をしたいですか? – mariodev
@mariodev:ブラウズ可能なAPIビュー(ブラウズツリーが自動的に生成される)、ビューセットからいくつかのURLが生成され、通常のビューから生成されるURLが必要です。これは、ViewSetsでDefaultRouterを使用しているときに機能しますが、ビュー(ViewSetではなく)から派生したurl_patternsを追加するとすぐに分解されます。 – dangonfast