Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 升级到Django 1.3后,许多主机上出现FieldError_Python_Django_Django Models - Fatal编程技术网

Python 升级到Django 1.3后,许多主机上出现FieldError

Python 升级到Django 1.3后,许多主机上出现FieldError,python,django,django-models,Python,Django,Django Models,刚刚更新到Django 1.3,遇到了一个奇怪的错误。我从1.2.7版本的一些代码中得到以下错误 FieldError: Cannot resolve keyword 'email_config_set' into field. Choices are: id, name, site, type 奇怪的是email\u config\u set是一个多个字段的相关名称。我不知道django为什么要把它分解成一个字段 错误发生在django的内部深处: Traceback (most recen

刚刚更新到Django 1.3,遇到了一个奇怪的错误。我从1.2.7版本的一些代码中得到以下错误

FieldError: Cannot resolve keyword 'email_config_set' into field. Choices are: id, name, site, type
奇怪的是email\u config\u set是一个多个字段的相关名称。我不知道django为什么要把它分解成一个字段

错误发生在django的内部深处:

Traceback (most recent call last):
  File "./core/driver.py", line 268, in run
    self.init_norm()
  File "./driver/emailevent/background.py", line 130, in init_norm
    self.load_config()
  File "./driver/emailevent/background.py", line 71, in load_config
    events = list(config.events.select_related())
  File "/usr/local/lib/python2.6/site-packages/Django-1.3.1-py2.6.egg/django/db/models/manager.py", line 168, in select_related
    return self.get_query_set().select_related(*args, **kwargs)
  File "/usr/local/lib/python2.6/site-packages/Django-1.3.1-py2.6.egg/django/db/models/fields/related.py", line 497, in get_query_set
    return superclass.get_query_set(self).using(db)._next_is_sticky().filter(**(self.core_filters))
  File "/usr/local/lib/python2.6/site-packages/Django-1.3.1-py2.6.egg/django/db/models/query.py", line 550, in filter
    return self._filter_or_exclude(False, *args, **kwargs)
  File "/usr/local/lib/python2.6/site-packages/Django-1.3.1-py2.6.egg/django/db/models/query.py", line 568, in _filter_or_exclude
    clone.query.add_q(Q(*args, **kwargs))
  File "/usr/local/lib/python2.6/site-packages/Django-1.3.1-py2.6.egg/django/db/models/sql/query.py", line 1194, in add_q
    can_reuse=used_aliases, force_having=force_having)
  File "/usr/local/lib/python2.6/site-packages/Django-1.3.1-py2.6.egg/django/db/models/sql/query.py", line 1069, in add_filter
    negate=negate, process_extras=process_extras)
  File "/usr/local/lib/python2.6/site-packages/Django-1.3.1-py2.6.egg/django/db/models/sql/query.py", line 1260, in setup_joins
    "Choices are: %s" % (name, ", ".join(names)))
FieldError: Cannot resolve keyword 'email_config_set' into field. Choices are: id, name, site, type

欢迎提供任何指针或提示。

本例中的问题是由于动态模型及其创建顺序造成的。更具体地说,一些模型是在其他模型之后动态创建的,在填充_元缓存时没有定义,因此会导致错误。清除缓存或更改创建顺序可以解决此问题


另请参见

本例中的问题是由于动态模型及其创建顺序造成的。更具体地说,一些模型是在其他模型之后动态创建的,在填充_元缓存时没有定义,因此会导致错误。清除缓存或更改创建顺序可以解决此问题


另请参见

有趣的是,此问题仅在“DEBUG=True”时出现。如果创建新的virtualenv和新的django安装,这是一个可重复的错误吗?有趣的是,此问题仅在“DEBUG=True”时出现。如果创建新的virtualenv和新的django安装,这是一个可重复的错误吗?