Django URLconf包括:包导入不起作用

时间:2012-12-09 14:33:15

标签: django django-registration urlconf

我正在制作一个简单的django网站,我正在使用django-registration扩展。我应该补充一点,我刚刚将django-registration源复制到我的项目中,好像它是我自己的应用程序 - 我正在与其他人一起做网站,我们的django环境配置不同,但我们通过以下方式共享网站的代码svn - 我不希望我们每个人分别安装django-registration。

在根urls.py文件中我得到了:

import registration
...
urlpatterns = (
   ...
   url(r'^accounts/',include(registration.backends.default.urls),
)

'后端'和'默认'是注册应用中的包。

在Aptana中,代码检查错误消息指出:“导入的未定义变量:后端” 在我的测试服务器的调试模式中,错误是“'模块'对象没有属性'后端'”

如果我from registration import backendsinclude(backends.default.urls),则找不到“默认”。

当我执行from registration.backends import defaultinclude(default.urls)时它会起作用,但我不想这样做,因为我无法快速查看它链接到的内容......

为什么环境没有正确加载包?在同一个文件中,我使用其他URLconf包含包含诸如include(django.contrib.admin)之类的包名称的路径,并且这些路径没有问题。是因为我复制了注册源而不是安装应用程序?如果是这样,那么提供所需源代码可移植性的正确方法是什么?

1 个答案:

答案 0 :(得分:1)

尝试将注册网址的路径指定为字符串,而不是在urls.py中导入注册模块:

url(r'^accounts/',include('registration.backends.default.urls'),