Python 无法访问罗塞塔
版本:Python 无法访问罗塞塔,python,django,django-urls,django-rosetta,Python,Django,Django Urls,Django Rosetta,版本: Python 3.5.1 Django 1.10 django rosetta 0.7.13 告诉您将以下内容添加到项目的设置.py: from django.conf import settings if 'rosetta' in settings.INSTALLED_APPS: urlpatterns += patterns('', url(r'^rosetta/', include('rosetta.urls')), ) 但是,这只会导致一个
- Python 3.5.1
- Django 1.10
- django rosetta 0.7.13
设置.py
:
from django.conf import settings
if 'rosetta' in settings.INSTALLED_APPS:
urlpatterns += patterns('',
url(r'^rosetta/', include('rosetta.urls')),
)
但是,这只会导致一个错误:
NameError: name 'patterns' is not defined
搜索该问题表明: 但它仍然不起作用
ImportError: cannot import name 'patterns'
这个功能。但是,可以使用此方法有条件地添加rosetta URL:
from django.conf import settings
if 'rosetta' in settings.INSTALLED_APPS:
urlpatterns.append(url(r'^rosetta/', include('rosetta.urls')))
但是,如果您试图访问该url上的rosetta,您可能会惊讶地发现仍然有一个404页面未找到
因此,所包含的模式似乎无法正常工作。但事实确实如此。问题是,有一个隐藏的要求,即访问rosetta页面时必须登录(可能有员工/超级用户?)。因此,只需转到,登录,然后再次转到rosetta url。现在应该可以了
安装过程中确实注意到了这一点:
因为Rosetta需要对数据库中的某些文件进行写访问
Django项目中,对应用程序的访问仅限于
仅限管理员用户(在项目的管理界面中定义)
如果您未登录,它如何知道您是管理员?它没有,显然它没有给出信息错误,而是完全忽略了rosetta URL
from django.conf import settings
if 'rosetta' in settings.INSTALLED_APPS:
urlpatterns.append(url(r'^rosetta/', include('rosetta.urls')))