我的网站以前可以正常工作,但突然因错误而中断
配置不正确,位于/包含的urlconf resume.urls中没有任何模式
该项目的基础称为简历。在settings.py我已经设置
ROOT_URLCONF = 'resume.urls'
这是我的resume.urls,位于项目根目录中。
from django.conf.urls.defaults import * # Uncomment the next two lines to enable the admin: from django.contrib import admin admin.autodiscover() urlpatterns = patterns('', # Example: # (r'^resume/', include('resume.foo.urls')), # Uncomment the admin/doc line below and add 'django.contrib.admindocs' # to INSTALLED_APPS to enable admin documentation: (r'^admin/doc/', include('django.contrib.admindocs.urls')), # Uncomment the next line to enable the admin: (r'^admin/', include(admin.site.urls)), (r'^accounts/login/$', 'django.contrib.auth.views.login'), #(r'^employer/', include(students.urls)), (r'^ajax/', include('urls.ajax')), (r'^student/', include('students.urls')), (r'^club/(?P<object_id>\d+)/$', 'resume.students.views.club_detail'), (r'^company/(?P<object_id>\d+)/$', 'resume.students.views.company_detail'), (r'^program/(?P<object_id>\d+)/$', 'resume.students.views.program_detail'), (r'^course/(?P<object_id>\d+)/$', 'resume.students.views.course_detail'), (r'^career/(?P<object_id>\d+)/$', 'resume.students.views.career_detail'), (r'^site_media/(?P<path>.*)$', 'django.views.static.serve', {'document_root': 'C:/code/django/resume/media'}), )
我有一个名为urls的文件夹和一个文件ajax.py。(我还在同一文件夹中创建了一个空白的init .py,以便可以识别url。)这是ajax.py。
from django.conf.urls.defaults import * urlpatterns = patterns('', (r'^star/(?P<object_id>\d+)$', 'resume.students.ajax-calls.star'), )
有人知道怎么了吗?这真让我抓狂。
检查你的模式中是否包含指向不存在的模块或没有urlpatterns成员的模块的include语句。我发现你的include('urls.ajax')可能不正确。应该是ajax.urls吗?
urlpatterns
include
include('urls.ajax')
ajax.url
TL; DR:你可能需要使用reverse_lazy()而不是reverse()
reverse_lazy()
reverse()
如果urls.py导入使用的基于类的视图,reverse()则会出现此错误;使用reverse_lazy()将修复它。
urls.py
对我来说,错误
包含的urlconf project.urls中没有任何模式
被抛出是因为:
project.urls
app.urls
app.views
reverse
reverseimport project.urls
使用reverse_lazy而不是reverse解决问题:使用该方法可以将URL的还原推迟到运行时首次需要使用。
reverse_lazy
道德:reverse_lazy如果你需要在应用启动之前进行撤消,请务必使用。