【发布时间】:2015-06-27 22:07:23
【问题描述】:
自从我处理 django 以来已经有一段时间了,我正在处理一些可能有点旧的代码,现在在 Django 1.7 上。这个堆栈跟踪是关于什么的?
它不是通过runserver 发生的,而是通过使用应用程序模型的命令行实用程序发生的。之前的问题指向升级 wsgi 文件(已经完成)并创建一个AppConfig 对象(已经完成,尽管可能不完整)。
Traceback (most recent call last):
File "files/hashcat.py", line 34, in <module>
process.processFile(line)
File "/home/x/dataidentity/files/processing/process.py", line 81, in processFile
af.analyze()
File "/home/x/dataidentity/files/filetype/AnalysisFactory.py", line 40, in analyze
self.getOrCreateFileNameModel()
File "/home/x/dataidentity/files/filetype/AnalysisFactory.py", line 51, in getOrCreateFileNameModel
basefile=self.fileModel)
File "/home/x/venv/local/lib/python2.7/site-packages/django/db/models/query.py", line 679, in filter
return self._filter_or_exclude(False, *args, **kwargs)
File "/home/x/venv/local/lib/python2.7/site-packages/django/db/models/query.py", line 697, in _filter_or_exclude
clone.query.add_q(Q(*args, **kwargs))
File "/home/x/venv/local/lib/python2.7/site-packages/django/db/models/sql/query.py", line 1304, in add_q
clause, require_inner = self._add_q(where_part, self.used_aliases)
File "/home/x/venv/local/lib/python2.7/site-packages/django/db/models/sql/query.py", line 1332, in _add_q
allow_joins=allow_joins, split_subq=split_subq,
File "/home/x/venv/local/lib/python2.7/site-packages/django/db/models/sql/query.py", line 1144, in build_filter
lookups, parts, reffed_aggregate = self.solve_lookup_type(arg)
File "/home/x/venv/local/lib/python2.7/site-packages/django/db/models/sql/query.py", line 1030, in solve_lookup_type
_, field, _, lookup_parts = self.names_to_path(lookup_splitted, self.get_meta())
File "/home/x/venv/local/lib/python2.7/site-packages/django/db/models/sql/query.py", line 1367, in names_to_path
if field.is_relation and not field.related_model:
File "/home/x/venv/local/lib/python2.7/site-packages/django/utils/functional.py", line 60, in __get__
res = instance.__dict__[self.name] = self.func(instance)
File "/home/x/venv/local/lib/python2.7/site-packages/django/db/models/fields/related.py", line 110, in related_model
apps.check_models_ready()
File "/home/x/venv/local/lib/python2.7/site-packages/django/apps/registry.py", line 131, in check_models_ready
raise AppRegistryNotReady("Models aren't loaded yet.")
django.core.exceptions.AppRegistryNotReady: Models aren't loaded yet.
【问题讨论】:
-
如果您从外部脚本使用 Django,则必须在使用任何模型之前运行
django.setup()。