版本:
安装指南告诉您将以下内容添加到项目的settings.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发布于 2017-06-13 10:45:09
对这个问题的搜索揭示了显然要进口它。
from django.conf.urls import patterns但还是不起作用。
ImportError: cannot import name 'patterns'这个函数在django 1.10被移走。但是,可以使用这种方法有条件地添加rosetta urls:
from django.conf import settings
if 'rosetta' in settings.INSTALLED_APPS:
urlpatterns.append(url(r'^rosetta/', include('rosetta.urls')))但是,如果您尝试访问url http://127.0.0.1:8000/rosetta/上的rosetta,您可能会惊讶地发现,您仍然得到了一个404 Page not found。
因此,所包含的模式似乎不能正常工作。但他们确实是。问题是,有一个隐藏的要求,一个必须登录时,访问罗塞塔页面(可能与工作人员/超级用户?)。所以,只需访问http://127.0.0.1:8000/admin/,登录,然后再转到rosetta url。现在该起作用了。
安装确实注意到了以下几点:
因为Rosetta需要对Django项目中的某些文件进行写访问,所以对应用程序的访问仅限于管理员用户(如项目的管理接口中定义的)。
如果您没有登录,它如何知道您是管理员?它没有,而且显然没有提供一个信息错误,它完全忽略了rosetta urls。
https://stackoverflow.com/questions/44519301
复制相似问题