试图在Django

时间:2015-12-25 19:59:08

标签: python django django-views

我理解循环导入错误已被问到很多,但在经过这些问题之后我还没有能够解决我的问题。当我尝试在Django中运行我的服务器时,它给我这个错误消息:

  

包含的URLconf模块' accounts_app'从path \到\ myproject \ __ init__.py似乎没有任何模式。如果您在文件中看到有效模式,则问题可能是由循环导入引起的。

问题开始时,我添加了一个新的应用程序,其中包含urls.py,如下所示

from django.conf.urls import url
from . import views

urlpatterns = [
    url(r'^signin$', views.signin, name='signin'),
    url(r'^signout$', views.signout, name='signout'),
    url(r'^signup$', views.signup, name='signup'),
]

我的项目urls.py有一行指向应用程序,看起来像下面的代码

urlpatterns = [
     url(r'^accounts/', include('accounts_app')),
]

我的观点如下:

from django.shortcuts import render
from django.http import HttpResponse

def signin(request):
    return HttpResponse("<p>This the signin view</p>")

def signout(request):
    return HttpResponse("<p>This the signout view</p>")

def signup(request):
    return HttpResponse("<p>This the signup view</p>")

任何人都可以帮我确认我是否可能出错。

11 个答案:

答案 0 :(得分:13)

尝试更改

urlpatterns = [
     url(r'^accounts/', include('accounts_app')),
] 

urlpatterns = [
     url(r'^accounts/', include('accounts_app.urls')), # add .urls after app name
]

答案 1 :(得分:4)

对于那些具有相同错误但仍未调试其代码的用户,还请检查您如何键入“ urlpatterns”

输入错误或带有下划线/下划线将导致相同的错误

答案 2 :(得分:1)

在我的情况下,我遇到了错误,因为我给出了包含URL的目录错误路径。所以我改变了

urlpatterns = [
    url(r'^user/', include('core.urls'))
]

对此

urlpatterns = [
    url(r'^user/', include('core.urls.api'))
]

答案 3 :(得分:1)

在我的情况下,出现此错误是因为我为需要slug参数但未在其中放置正确参数的url调用了反向函数。

一旦我修复了反向功能,它就解决了。

答案 4 :(得分:0)

那些习惯使用CamelCased名称的人也可能会遇到错误。

urlpatterns的键入必须与'urlpatterns'

完全相同

这将显示错误-

urlPatterns = [
    path('', views.index, name='index'),

错误-

django.core.exceptions.ImproperlyConfigured: The included URLconf '<module 'polls.urls' from '...\\polls\\urls.py'>' does not appear to have any patterns in it. If you see valid patterns in the file then the issue is probably caused by a circular import.

但是,修复CamelCase可以正常工作-

urlpatterns = [
    path('', views.index, name='index'),
]

答案 5 :(得分:0)

在我的情况下,由于在urls.py中输入 urlpatterns urlpattern 而出现了此错误。

答案 6 :(得分:0)

如果views.py中不存在SomeView并执行此操作,也会出现此错误:

from someapp import views

urlpatterns = [
    path('api/someurl/', views.SomeView.as_view(), name="someview"),
]

因此请确保您在urls.py中使用的所有视图都在views.py中存在

答案 7 :(得分:0)

以我为例,

/SLMS_APP1/urls.py'>'似乎没有任何模式。如果您在文件中看到有效的模式,则说明问题可能是由循环导入引起的。

我在'urlpatter'

中打了一个错字

urlpatter = [ path('',views.index,name ='index'),

]

正确拼写必须为'urlpatterns'

urlpatterns = [ path('',views.profile,name ='profile'),

]

答案 8 :(得分:0)

搜索1小时后,似乎是错误的拼写,应该是: urlpatterns

urlpatterns = [
   path('', views.index, name="index")
]

答案 9 :(得分:0)

当您将应用程序包含在主 urls.py 文件中并且尚未声明 urlpattern= [] 应用程序内文件时,基本上会发生此错误。

答案 10 :(得分:0)

在我的情况下,我在我的 success_url 上将“reverse”更改为“reverse_lazy”,并且神奇地起作用了。