gpt4 book ai didi

python - 这可以用 django __str__ 方法来完成吗?

转载 作者:太空宇宙 更新时间:2023-11-03 21:39:24 27 4
gpt4 key购买 nike

我有 2 个模型,其中一个模型带有外键

class MyModel(models.Model):
description = models.CharField(max_length=50)
type = models.CharField(max_length=10)
def __str__(self):
return self.description

class Model1(models.Model):
mymodel = models.ForeignKey(MyModel)

class Model2(models.Model):
mymodel = model.ForeignKey(MyModel)

mymodel字段的管理下拉列表中,str方法返回MyModel的描述如何更改每个模型 Model1Model2 返回的内容str 方法中的示例,如果模型是 Model2,则返回“type”;如果模型是 Model1,则返回“description”。

我基本上问的是如何有条件地返回 MyModel 中的“类型”或“描述”

最佳答案

我个人不喜欢这个解决方案。

ForeignKey 表示多对一关系。而你想要实现相反的目标。

class MyModel(models.Model):
description = models.CharField(max_length=50)
type = models.CharField(max_length=10)
def __str__(self):
if self.model1_set.exists():
return self.type
if self.model2_set.exists():
return self.description
# What to return if both exists or none of them?

关于python - 这可以用 django __str__ 方法来完成吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52998309/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com