我正在运行Django 1.5.1,Python 2.7.2和IPython 0.13.2。如果我从我的Django项目目录内做“蟒蛇./manage.py壳”,我得到以下错误:使用Django 1.5和IPython获取NameError
from django import forms
class CommentForm(forms.Form):
name = forms.CharField()
NameError: name 'forms' is not defined.
我知道被定义为,我可以看到它时,它做“目录(形式)的形式”。我注意到这个错误只发生在我在REPL中运行iPython的时候。如果我启动REPL并只使用普通的旧Python解释器,则不会发生错误。
有其他人遇到过这个问题吗?如果是这样,你知道它为什么会发生,是否有解决方法吗?
我应该补充一点,我在过去在REPL中创建类时遇到了问题,直到我在类中创建了一个元类并定义了一个“app_label”变量。这在这种情况下并没有什么不同。
谢谢。
你有没有在你的项目文件夹中有任何机会命名'forms.py'的文件? – eandersson 2013-04-07 20:55:03
Django习惯于吞噬合法的异常并重新提高通用异常。我会看看代码,甚至修改它以查看实际引发的异常可能是什么。 – aychedee 2013-04-07 20:58:06
eandersson,不,我没有在项目中的forms.py文件,但添加一个没有解决问题。感谢您的建议。 – William 2013-04-07 21:33:31