Django:无法导入名称

2023-12-23

我刚刚在向我的网站部署新更新时遇到了一个非常烦人的问题。我有两个独立的网站,其中之一是开发版本。现在,当我想将更改应用于生产时,由于错误消息,它将无法工作:

文件 “/usr/lib/python2.6/dist-packages/django/core/handlers/base.py”, 第 99 行,在 get_response 中
请求.path_info)

文件 “/usr/lib/python2.6/dist-packages/django/core/urlresolvers.py”, 第 249 行,解析中的模式 self.url_patterns:

文件 “/usr/lib/python2.6/dist-packages/django/core/urlresolvers.py”, 第 278 行,在 _get_url_patterns 中
模式= getattr(self.urlconf_module, “urlpatterns”,self.urlconf_module)

文件 “/usr/lib/python2.6/dist-packages/django/core/urlresolvers.py”, 第 273 行,在 _get_urlconf_module 中
self._urlconf_module = import_module(self.urlconf_name)

文件 “/usr/lib/python2.6/dist-packages/django/utils/importlib.py”, 第 35 行,在 import_module 中
import(name)

文件 “/srv/websites/spelutveckla_se/urls.py”, 第 21 行,在
(r'^帐户/登录/$', LoginView.as_view()),

NameError:名称“LoginView”不是 定义的

如果我删除该应用程序、视图、类或模块并不重要,因为它会抱怨其他模块。 LoginView 在导入语句中定义。这些文件只是开发文件(settings.py 除外)的新副本,可以在另一个子域上运行,没有任何问题。我已经多次检查了 settings.py 并确保设置了正确的设置(几个目录路径有所不同)。我还检查了 apache2 www-data 用户是否有权访问这些文件。我还重新启动了 apache 几次,并一遍又一遍地重新复制文件,但没有任何效果。

我很绝望,不知道问题出在哪里......?

这是我的 urls.py 顶部的样子:

from django.conf.urls.defaults import *
from django.conf import settings
from django.views.generic import DetailView, ListView, TemplateView
from django.contrib import admin
from project.models import Project
from project.views import Detail, EditView as EditProject, CreateProjectView, EditProjectLinksView, EditProjectFeedsView, EditProjectTagsView, EditMultimediaView, PostForumTopic, AudioFormset
from frontpage.views import FrontpageView
from userprofile.views import UserRegistrationView, UserRegistrationActivationView, LogoutView, UserProfileView, LoginView, EditProfileView, CreateUserProfileView
from registration.views import activate as UserActivatedView

您很可能在模块中进行了循环导入LoginView被定义于,即当您导入时views定义的模块LoginView,某些语句又以某种方式导入了仍在等待完全解释的其他模块。

这里有一个例子可以让您有更好的想法:

# myapp.urls

from django.conf.urls.defaults import *
from myapp import views

urlpatterns = patterns('',
    # ...
)

# myapp.views

from django.core.urlresolvers import reverse
from django.views.generic.edit import CreateView

class SomeCreateView(CreateView):

    # BOOM!
    success_url = reverse('myapp:some-url')

Once myapp.views被导入并且SomeCreateView类型被分配到内存,reverse('myapp:some-url')将被处决,你的myapp.urls最终将由 Django 导入,但从那以后这是不可能的myapp.urls将无限期地等待myapp.views获得进口。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Django:无法导入名称 的相关文章

随机推荐

  • Blackberry OS 4.5 应用程序的通知服务

    我正在开发一个类似于电子邮件应用程序的应用程序 每当收到新消息时 我的通知服务应通过更新图标向用户指示更改 此外 通知服务应持续侦听服务器的传入事件 我正在使用 4 5 版本的操作系统进行开发 RIM OS 您有多种选择来通知 用户 都不是
  • 如何将 Google 地图标记链接到其他元素?

    使用谷歌地图 http code google com apis maps documentation reference html 和 JavaScript 我已经能够轻松地显示几个标记 每个标记上都有一个漂亮的小信息窗口 Create
  • 关闭 Cypress 中的 Angular 材质对话框

    我正在将 Cypress 添加到我的 Angular 6 项目中 并使用 Angular Material 欢迎新用户使用材质对话框 其中包含 iFrame 并且通过单击对话框外部来关闭该对话框 我尝试通过多种方式在 Cypress 中关闭
  • ng2-charts 更新标签和数据

    我正在尝试使用 ng2 chart 动态创建图表 我从 Angular 2 服务获取信息 当我仅更改图表标签时 它有效 当我更改数据时 它仅有效 但是当我更改两者时 仅数据在图表中更新 有人可以解释一下这种奇怪的行为吗 我的模板
  • 连接关闭后 Socat 终止

    此命令 串行端口重定向器 接受 TCP 11313 上的单个连接 socat PTY link dev ttyV1 echo 0 raw unlink close 0 TCP LISTEN 11313 forever reuseaddr 但
  • AngularJS ui-router,滚动到状态更改的下一步

    我在我的应用程序中使用 UI router 当 URL 状态更改时 我想使用一个简单的 scrollTo 到锚点 我不想从模板加载下一步 或加载新的控制器 我只是希望页面上已经有几个 div 并在它们之间上下滚动 HTML 的简化视图如下所
  • `if __name__ == '__main__'` 在 javascript es6 模块中等效

    是否可以检查 JavaScript 文件是否直接运行 或者是否需要作为 es6 模块导入的一部分 例如 包含一个主脚本 main js import other if mainTest console log This should run
  • Python 日志记录:将属于一个请求的日志分组

    有没有一种方法可以对属于一个 Web 请求的 Python Web 应用程序的日志进行分组 Example 2015 02 11 13 06 32 myapp middleware MYAPPMiddleware INFO Login of
  • 当我编译时会发生什么?

    我想知道什么是编译 编译时会发生什么 我的意思是 是的 您按编译或在控制台中输入 但它在 后台 实际上做了什么 一 编译器 lexes http en wikipedia org wiki Lexical analysis来源 这意味着它将
  • 在 Perforce 集成期间忽略源文件的正确方法

    在我的主分支中有一个包含 10 个文件的更改列表 我正在尝试将其集成到开发分支中 更改列表中的所有未完成文件都应被忽略 并且不会分支到目标中 执行集成的步骤是什么 以便 Perforce 不会在目标分支中创建文件 并忽略所有未来集成的更改列
  • C#中如何强制数字在某个范围内? [复制]

    这个问题在这里已经有答案了 在 C 中 我经常必须将整数值限制在某个值范围内 例如 如果应用程序需要百分比 则用户输入的整数不得小于零或大于一百 另一个例子 如果有五个网页 通过Request Params p 我期望值从 1 到 5 而不
  • 数据库表的子类型化

    在设计数据库时 我经常听到有关子类型化表的信息 并且我完全了解它们背 后的理论 然而 我从未真正见过表子类型的实际应用 如何创建表的子类型 我正在使用 MS Access 并且正在寻找一种在 SQL 中以及通过 GUI Access 200
  • 如何通过多个属性Java8对HashMap条目值进行排序[重复]

    这个问题在这里已经有答案了 如何按多个属性对 HashMap 条目进行排序 假设我有一个键为 String 且值为 Object 的映射 Map
  • 在centos上专门在python 2.7中安装MySQLdb

    我正在使用 CentOS 版本 6 5 最终版 我目前使用的是python 2 4 在其中我可以毫无问题地使用MySQL root dedicado home digicelc public html gestion python cate
  • JUNIT:对于大量测试类仅运行一次安装程序

    我有一门课程 我用它作为单元测试的基础 在这个类中 我初始化了测试的整个环境 设置数据库映射 在多个表中输入大量数据库记录等 该类有一个带有 BeforeClass 注释的方法来执行初始化 接下来 我使用具有 Test 方法的特定类来扩展该
  • 有没有办法在循环内部知道您是否处于最终迭代?

    在迭代数组 或任何其他可枚举 时 是否有任何干净且简单的方法可以知道您是否处于最终迭代 例如 在 Rails 视图中 您可能要显示一组内容 并且您可能希望在它们之间放置一条水平线 但不要在每个内容之前 也不要在每个内容之后 仅限于他们之间
  • git 中缺少提交的更改

    我有一个由几个人组成的团队 使用 git flow 方法 master develop hotfixes features releases 和一个远程裸存储库 在同一个 git 存储库上工作 我们有一个包含一些提交的修补程序 已成功合并到
  • 连接更改上的 API 挂钩

    我在 Android 手机上有一个打印机检查应用程序 它的基本检查表即使检查员没有互联网连接 也可以进行打印机检查 一旦电话恢复接收 互联网 我想提交检查 我正在考虑使用 Android 服务来设计应用程序因此它将使用 sqlite 保存检
  • hashCode 或 equals 中的 HibernateException

    我正在使用 spring 和 hibernate 当在没有实现 equals 和 hashCode 的情况下进行获取时 一切正常 当我添加这两个方法并执行查询时 哈希码内会抛出一个 LazyinitializationException 我
  • Django:无法导入名称

    我刚刚在向我的网站部署新更新时遇到了一个非常烦人的问题 我有两个独立的网站 其中之一是开发版本 现在 当我想将更改应用于生产时 由于错误消息 它将无法工作 文件 usr lib python2 6 dist packages django