首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于有效导入的Django ImportError

用于有效导入的Django ImportError
EN

Stack Overflow用户
提问于 2016-11-05 17:28:46
回答 1查看 26关注 0票数 0

我认为最好用一点代码来解释这一点。请注意,数据之间稍微有点奇怪的关系是一种黑客攻击,可以让内联处理多到多个关系。

应用程序"data“具有以下models.py:

代码语言:javascript
复制
from crawler.models import CrawlJoin

class Website(models.Model):
    hack = models.ForeignKey(CrawlJoin, null=True, blank=True, editable=False)

该应用程序“爬虫”有以下models.py:

代码语言:javascript
复制
from data.models import Website

class CrawlJoin(models.Model):
    pass

class Crawl(models.Model):
    websites = models.ManyToManyField(CrawlJoin, through='Website')

如果我试图迁移爬虫或数据,我会得到以下错误:

代码语言:javascript
复制
ImportError: cannot import name 'CrawlJoin'

你知道我怎样才能解决这个问题吗?据我所知,我不应该犯这个错误.

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-11-05 18:02:22

您有一个循环导入,因为两个模型模块都试图相互导入。您可以通过删除导入并使用外键中的字符串来中断循环导入:

代码语言:javascript
复制
hack = models.ForeignKey('crawler.CrawlJoin', null=True, blank=True, editable=False)
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40441158

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档