当我在Django 1.8.3中运行自定义命令时,我得到了以下堆栈跟踪:
(env)MacBook-Air:backend user$ python manage.py questions
Traceback (most recent call last):
File "./manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/Users/user/WeVote/env/lib/python2.7/site-packages/django/core/management/__init__.py", line 338, in execute_from_command_line
utility.execute()
File "/Users/user/WeVote/env/lib/python2.7/site-packages/django/core/management/__init__.py", line 330, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/Users/user/WeVote/env/lib/python2.7/site-packages/django/core/management/base.py", line 393, in run_from_argv
self.execute(*args, **cmd_options)
File "/Users/user/WeVote/env/lib/python2.7/site-packages/django/core/management/base.py", line 444, in execute
output = self.handle(*args, **options)
File "/Users/user/WeVote/wevote/questions/management/commands/questions.py", line 14, in handle
OSError: [Errno 2] No such file or directory: '/Users/user/WeVote/backend/questions/question_files'
错误有效,文件路径不存在。我去查看questions.py
中的第14行,但该文件不存在。嘘声。
如您所见,文件结构在引用questions.py
文件时有所不同。有些人说,我确定那是文件结构。我还在Djano 1.7中写了这个并升级到1.8。但是,所有其他自定义命令(在升级之前和之后编写)都正常工作。
正如理智检查一样,我尝试了
cd /Users/user/WeVote/wevote/questions/management/commands/
不。这是一个问题,因为当我现在编辑questions.py
目录中位置正确的management/commands
时,更改并未反映出来。它就像是在阅读这个文件的缓存版本和位置。
还尝试删除并重建virtualenv和数据库。两者都没有爱。我确信这是一件很容易忽视的事情,但我没有想法。
答案 0 :(得分:0)
后来任何人的参考:上面的yuvi和Paul Collingwood的评论成功地解决了我的问题。我跑了
find . -name '*.pyc' -delete
下次我跑questions.py
时一切顺利。感谢您的评论。