【发布时间】:2013-04-07 20:53:10
【问题描述】:
我正在运行 Django 1.5.1、Python 2.7.2 和 IPython 0.13.2。如果我从我的 Django 项目目录中执行“python ./manage.py shell”,我会收到以下错误:
from django import forms
class CommentForm(forms.Form):
name = forms.CharField()
NameError: name 'forms' is not defined.
我知道表单被定义为当它执行“dir(forms)”时我可以看到它。我注意到这个错误只发生在我在 REPL 中运行 iPython 时。如果我启动 REPL 并且只使用普通的、旧的 Python 解释器,则不会发生错误。
有没有其他人遇到过这个问题?如果是这样,您知道为什么会发生这种情况以及是否有解决方法吗?
我应该补充一点,我过去在 REPL 中创建类时遇到过问题,直到我在类中创建了一个元类并定义了一个“app_label”变量。在这种情况下,这并没有什么不同。
谢谢。
【问题讨论】:
-
您的项目文件夹中是否有一个名为
forms.py的文件? -
Django 习惯于吞下合法异常并重新引发泛型异常。我会看一下代码,甚至修改它以查看实际引发的异常可能是什么。
-
eandersson,不,我在项目中没有 forms.py 文件,但添加一个并不能解决问题。感谢您的建议。
标签: python django django-forms ipython