我有一个全新的Django项目.我添加了一个最小视图函数views.py和一个URL模式urls.py,通过函数引用而不是字符串传递视图:
# urls.py
# -------
# coding=utf-8
from django.conf.urls.defaults import *
from myapp import views
urlpatterns = patterns('',
url(r'^myview/$', views.myview),
)
# views.py
----------
# coding=utf-8
from django.http import HttpResponse
def myview(request):
return HttpResponse('MYVIEW LOL', content_type="text/plain")
Run Code Online (Sandbox Code Playgroud)
我试图reverse()通过传递一个函数引用来获取URL.但我没有得到匹配,尽管我确认我传递给反向的视图函数与我在URL模式中放置的完全相同的视图函数:
>>> from django.core.urlresolvers import reverse
>>> import urls
>>> from myapp import views
>>> urls.urlpatterns[0].callback is views.myview
True
>>> reverse(views.myview)
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "/Library/Python/2.5/site-packages/django/core/urlresolvers.py", line 254, in reverse …Run Code Online (Sandbox Code Playgroud)