首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ImportError:无法导入名称“patterns”

ImportError:无法导入名称“patterns”
EN

Stack Overflow用户
提问于 2018-04-01 21:08:36
回答 3查看 9.4K关注 0票数 3

我对Django有一个问题,我创建了一个'login‘应用程序,并在mysite/urls.py上添加了URL,如下所示:

代码语言:javascript
复制
from django.conf.urls import include, patterns, url
from django.contrib import admin
from django.urls import path

urlpatterns = [
    path('admin/', admin.site.urls),
    url(r'^polls/', include('polls.urls')),
    url(r'^user-auth/', include('user_auth.urls')),
    url(r'^file-upload/', include('file_uploader.urls')),
    url(r'^pagination/', include('pagination.urls')),

    patterns('login.views',
    url(r'^login/', 'loginView'),
    url(r'^greeting/', 'formView'),
    url(r'^logout/', 'logoutView')
)   
]

但是,当我启动服务器时,我在控制台上收到如下消息:

代码语言:javascript
复制
File "/home/win/Python/mysite/mysite/urls.py", line 16, in <module>
    from django.conf.urls import include, patterns, url
ImportError: cannot import name 'patterns'

你遇到过这样的问题吗?和任何决议,你必须解决它。请帮帮我。谢谢

EN

回答 3

Stack Overflow用户

发布于 2018-04-01 21:25:21

在Django 1.10中删除了FYI模式。请参阅版本1.10说明:https://docs.djangoproject.com/en/2.0/releases/1.10/

如果你想使用更早的版本(但我不明白你为什么要这么做),任何低于1.9的版本都应该可以,但要注意的是,我认为从1.8开始它就被弃用了。

如果你正在使用django,特别是如果你是新手,我不明白你为什么要使用自己的登录应用程序。Django有一个非常成熟且可定制的auth后端。对于初学者来说,我强烈建议你去看看。https://djangobook.com/authentication-views/用法的有用示例

票数 3
EN

Stack Overflow用户

发布于 2019-12-03 15:50:17

在Django的最新版本中(截至本文),没有使用模式。

您可以使用re_path来实现相同的效果。例如:

代码语言:javascript
复制
from django.urls import include, re_path
from django.contrib import admin
from myapp.views import *

urlpatterns = [
    re_path(r'^admin', include(admin.site.urls)),
    re_path(r'^$', home, name='home'),
]

如需更多信息,请访问:Documentation

票数 3
EN

Stack Overflow用户

发布于 2018-04-01 21:15:42

如果您使用的是最新版本的Django,那么patterns已被弃用。您可以简单地使用URL和/或路径,这取决于您使用的是1.11还是2.0。如果你需要模式,那么你需要降级到更早的Django版本。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49598416

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档