1

url()URLConf に、同じビューにつながる複数の名前付き があります。そのビュー内から、どのurl()s が一致し、呼び出されたビューにつながったかをどのように見つけることができますか?

4

1 に答える 1

1

requestビューの最初の位置引数であるオブジェクトを見てください。属性がありrequest.pathます。

リゾルバーが現在request.pathの URLConf とどのように一致したかを確認するには、リゾルバーを呼び出します。

from django.core.urlresolvers import resolve
resolver_match = resolve(request.path)

ビュー内では、プロパティを含むオブジェクトであるresolver_matchことが明確に保証されています。このプロパティは、一致した名前の名前です。ResolverMatchurl_nameurl()

ResolverMatchオブジェクトには次のプロパティがあります。

.app_name {str} or {NoneType}
.args {tuple}
.kwargs {dict}
.namespace {str}
.namespaces {list}
.url_name {str}
.view_name {str}
于 2013-02-06T06:54:59.173 に答える