Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/302.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 ImportError:无法导入名称实体_Python_Django - Fatal编程技术网

Python ImportError:无法导入名称实体

Python ImportError:无法导入名称实体,python,django,Python,Django,我有两个模块,如下所示: --models.py from myapp.filters import EntityFilter class Entity(models.Model): //model definition def someMethod(self): entities = EntityFilter(...) from myapp.models import Entity class EntityFilter(django_filters.FilterSe

我有两个模块,如下所示:

--models.py

from myapp.filters import EntityFilter
class Entity(models.Model):
   //model definition

   def someMethod(self):
      entities = EntityFilter(...)
from myapp.models import Entity
class EntityFilter(django_filters.FilterSet):
    class Meta:    
        model = Entity
        // ...
--filters.py

from myapp.filters import EntityFilter
class Entity(models.Model):
   //model definition

   def someMethod(self):
      entities = EntityFilter(...)
from myapp.models import Entity
class EntityFilter(django_filters.FilterSet):
    class Meta:    
        model = Entity
        // ...
显然,我遇到了错误ImportError:无法导入名称实体

我应该如何重新组织代码

你觉得这个解决方案怎么样?可以吗

class Entity(models.Model):
   //model definition

   def someMethod(self):
      from myapp.filters import EntityFilter
      entities = EntityFilter(...)

它很好用…

你试过这样做吗

from myapp.models import Entity
class EntityFilter(django_filters.FilterSet):
    class Meta:    
        model = 'Entity'
        // ...

您用来解决这个问题的方法很好,在我所看到的python代码中非常常见(至少在循环依赖无法避免的情况下;在没有任何循环依赖需要担心的情况下,这样做也是为了避免过度污染全局命名空间)。有关导入语句在python中如何工作的详细描述,以及您解决此问题的原因,请参阅本网站,该网站在@mata的评论中提到的“python中的循环依赖关系”问题的答案中引用:。

是的,它不起作用。我得到了
AttributeError:'str'对象没有属性'\u meta'