为什么我不能将视图中的函数导入django中的模型?

时间:2013-09-18 01:21:47

标签: django django-models django-views

我有以下视图功能

def test():
    print 'test'

当我尝试在我的模型类中使用此函数并使用导入时:

from group.views import test

我收到以下错误:

File "/groups/models.py", line 14, in <module>
    from groups.views import test
  File "/groups/views.py", line 10, in <module>
    from groups.models import Group
ImportError: cannot import name Group

2 个答案:

答案 0 :(得分:3)

您有循环导入问题。您的模型文件具有视图导入,然后您的视图导入具有模型导入。有很多方法可以解决这个问题,我们必须看到你的模型和观点来源。

答案 1 :(得分:0)

我知道这个帖子真的很旧,但以防万一它可以帮助其他人,我想分享我在遇到同样问题时如何解决这个问题。正如@professorDante 所说,这是一个循环导入问题,因此我能够简单地创建另一个文件,我称之为 shared_functions.py 并将函数 test() 移动到该文件中。然后我可以将该函数导入到我以前有循环导入问题的两个文件中:

from .shared_functions import test