我已經閱讀了一些關于相互進口(回圈)問題的相關帖子。我正在開發一個 django 應用程式,這是我遇到問題的方式:
我有兩個應用程式,第一個articles,第二個tags
我的文章模型有一個多對多欄位,以指示相關標簽:
articles/models.py
from django.db import models
from tags.models import Tag
class Article(models.Model):
tags = models.ManyToManyField(Tag)
但是,在我的tags應用程式中,我還需要匯入Article模型來實作方法:
tags/models.py
from django.db import models
from articles.models import Article
# Create your models here.
class Tag(models.Model):
title = models.CharField(max_length=100)
content = models.CharField(max_length=255)
def getAritcleLength():
pass
def getQuestionLength():
pass
我通常使用一個模塊來組合這些類定義,通常不會根據方法決議順序遇到問題。但是,在 django 中,我們需要將類放入單獨的檔案夾中的作業流程,我很樂意提供任何建議。
uj5u.com熱心網友回復:
不要在文章模型中匯入 Tag 模型,而是使用類的字串參考。
# articles/models.py
from django.db import models
class Article(models.Model):
tags = models.ManyToManyField('Tag') OR: you can use app_name.model_name format as well
另一種方法是使用 Django 的方法從字串中獲取模型,然后將該變數用于模型參考。 Django:從字串中獲取模型?
uj5u.com熱心網友回復:
嘗試洗掉此字串
from articles.models import Article
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/337580.html
上一篇:成為機器學習大神,你不能不懂數學
