“The included URLconf 'my_image.urls' does not appear to have any patterns in it”解决办法。

运行Django程序的时候,出现“django.core.exceptions.ImproperlyConfigured: The included URLconf 'my_image.urls' 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.”错误。

看到 'my_image.urls'这个就应该想到是不是url配置方式有问题。(‘my_image’是我的项目名)

解决问题之前,我的 'my_image.urls'配置内容如下:

from django.conf.urls import url,include
from django.contrib import admin
from django.conf.urls.static import static
from django.conf import settings

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^image/', include('image.urls', namespace='image')),
    url(r'^captcha/', include('captcha.urls'))


] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

其中‘image.urls’是应用的urls名,它的代码如下:

from django.conf.urls import url
import image.views as bv

appname = 'image'

urlpatterns = [
    url(r'^index/', bv.index, name='index'),
    url(r'^saveImg/', bv.saveImg, name='saveImg'),
    url(r'^validate/', bv.validate, name='validate'),
]

改变urls的配置方式,修改后我的'my_image.urls'代码如下,其实就是include()中的第一参数是一个二元元组,将应用名添加在元组中:

from django.conf.urls import url,include
from django.contrib import admin
from django.conf.urls.static import static
from django.conf import settings


urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^image/', include(('image.urls', 'image'), namespace='image')),   # 此处修改了
    url(r'^captcha/', include('captcha.urls'))


] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

‘image.urls’修改如下:

from django.conf.urls import url
import image.views as bv


#appname = 'image'   # 此处注释掉

urlpatterns = [
    url(r'^index/', bv.index, name='index'),
    url(r'^saveImg/', bv.saveImg, name='saveImg'),
    url(r'^validate/', bv.validate, name='validate'),
]

其实,就是改变项目与应用两级的urls.py文件中的配置方式。

第二种解决方法,就是看看应用urls配置中的appname=‘应用名’ 改成app_name=‘应用名’

发布了12 篇原创文章 · 获赞 11 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_41092109/article/details/98759450