1
私はNamespaceVersioningでdjango-rest-frameworkを使用します。私の主なurls.pyは、次のようになります。バージョニングされたAPIの名前空間付きURLの逆戻り
...
url(r'^api/v1/', include('my_api.api_urls', app_name="api", namespace='v1')),
...
そしてmy_api.api_urls.py中:
urlpatterns = [
url(r'^some-endpoint/$', api_views.MyView.as_view(), name='some'),
]
はどういうわけか、私はこれらのURLを逆にすることができるように失敗します。なぜ私はこれをしないのですか?私は
NoReverseMatch
例外を得る。
reverse('some')
私はdjangoの名前空間を頭で囲むことはできませんが、最終的に定義された経路を使用しないでください。メインURLから名前空間引数を削除すると、すべて正常に動作します。
編集
も機能していない:
reverse('v1:some')
私も私のメインのURLのファイルで、私はAPI/V1 /プレフィックスに複数のURLのファイルを含めています、という、追加される場合があります:ジャンゴでのURL名を逆にすると
...
url(r'^api/v1/', include('my_api.api_urls', app_name="api", namespace='v1')),
url(r'^api/v1/', include('my_other_api.api_urls', app_name="api", namespace='v1')),
...
はええとD'、私はすでにこれを試してみた、同様に動作しません... – Nuschk
あなたはこのを試してみました:http://www.django-rest-framework.org/api-guide/versioning/#逆転URL版のためのバージョンapis ?? 'from rest_framework.reverse import reverse'のreverse関数を使用してください。 – v1k45
いいえ、それについては分かりませんでした。試してみるよ、ありがとう。 – Nuschk