默认情况下,Django的url解算器似乎会执行区分大小写的搜索来解析url,并区分‘/Login’和‘login’.我的url模式如下.

urlpatterns = patterns('',
    (r'^admin/(.*)', admin.site.root),
    (r'^static/(?P<path>.*)$', 'django.views.static.serve',
        {'document_root': settings.STATIC_DOC_ROOT, 'show_indexes': True}),
    (r'^login/$', 'django.contrib.auth.views.login'),
    (r'^logout/$', do_logout),
)

有没有人可以指导我,如何使Django URL不区分大小写?

推荐答案

只需将(?i)放在每个r'...'字符串的开头,即:

urlpatterns = patterns('',
(r'^(?i)admin/(.*)', admin.site.root),
(r'^(?i)static/(?P<path>.*)$', 'django.views.static.serve',
    {'document_root': settings.STATIC_DOC_ROOT, 'show_indexes': True}),
(r'^(?i)login/$', 'django.contrib.auth.views.login'),
(r'^(?i)logout/$', do_logout),
)

告诉每个RE不区分大小写--当然,从此幸福地生活!-)

Django相关问答推荐

我的Django终结点不访问HAS_OBJECT_PERMISSION方法

try 在 django 中发送验证邮箱,出现错误

int_list_validator在 Django 表单中不起作用

获取结果集中返回的元素数的 django 模板标签是什么?

在 Django 的 ORM 中访问存储过程的最佳方法是什么

无法通过 pip 安装 Django 2.0

如何迭代模板中 SelectField 的选项?

Django 模板:通过扩展模板覆盖包含的子模板块

如何使用 SQL 的IN等字段上的数组过滤 django 查询集?

Django UrlResolver,在运行时添加 url 进行测试

如何在 Django 中配置 X-Frame-Options 以允许 iframe 嵌入一个视图?

__init__() 得到了一个意外的关键字参数user

从 virtualenv 中,pip freeze > requirements.txt 给出了一堆垃圾!如何修剪它?

Django表单集:首先需要?

Django ORM 能否以可靠的与后端无关的方式存储无符号 64 位整数(又名 ulong64 或 uint64)?

django admin 排序外键字段列表

django-rest-framework 接受 JSON 数据?

Django Rest 框架 ImageField

django 如何知道已经运行了哪些迁移?

如何将类、id、占位符属性添加到 django 模型表单中的字段