一尘不染

Django-所包含的urlconf中没有任何模式

django

我的网站以前可以正常工作,但突然因错误而中断

配置不正确,位于/包含的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'),
)

有人知道怎么了吗?这真让我抓狂。


阅读 340

收藏
2020-04-02

共2个答案

一尘不染

检查你的模式中是否包含指向不存在的模块或没有urlpatterns成员的模块的include语句。我发现你的include('urls.ajax')可能不正确。应该是ajax.urls吗?

2020-04-02
一尘不染

TL; DR:你可能需要使用reverse_lazy()而不是reverse()

如果urls.py导入使用的基于类的视图,reverse()则会出现此错误;使用reverse_lazy()将修复它。

对我来说,错误

包含的urlconf project.urls中没有任何模式

被抛出是因为:

  • project.urls 进口的 app.urls
  • app.urls 进口的 app.views
  • app.views 有一个基于类的视图 reverse
  • reverseimport project.urls,导致循环依赖。

使用reverse_lazy而不是reverse解决问题:使用该方法可以将URL的还原推迟到运行时首次需要使用。

道德:reverse_lazy如果你需要在应用启动之前进行撤消,请务必使用。

2020-04-02