我有点被困。可以说我有这样的模特。
models.py :
import html
try:
import xml.etree.cElementTree as ET
except ImportError:
import xml.etree.ElementTree as ET
clean_string = xmlstring.replace('"id=', 'id="')
clean_string = html.unescape(clean_string)
root = ET.fromstring(clean_string.strip())
for content in root.findall('.//text'):
print(content.text)
如果我使用下一个代码:
class Company(models.Model):
name = models.CharField(blank=False, null=False)
class Game(models.Model):
developer = models.ForeignKey(Company, on_delete=models.CASCADE)
publishers = models.ManyToManyField(Company)
据我了解,它返回current_company = Company.object.get(pk=1)
current_company.game_set.all()
的所有游戏,但Django使用了哪些字段(开发人员或发布商)?
答案 0 :(得分:3)
但正是由于这个原因,这段代码才有效。如果你试图运行它,Django会告诉你反向关系存在冲突。
如果您有两个指向同一模型的关系,则需要在其中一个上明确设置related_name
以避免此冲突。