基本上,我想要的是满足条件时可用的字段,所以像这样:
class ConditionalModel(models.Model):
product = models.ForeignKey(product, on_delete=models.CASCADE)
if category == "laptop":
cpu_model = models.CharField(max_length=200)
因此,如果我转到 Django 管理页面并创建模型的实例,然后从现有“产品”的下拉列表中选择“笔记本电脑”作为产品,则会出现一个新字段。我在文档中找不到任何关于此的信息,所以我想知道这是否可能。
最佳答案
您所要求的在“技术上”是不可能的。一个模型关联一个数据库对象,而在传统的 SQL 规则下,这是不可能的。您可以改为将该字段设为可选,然后自定义管理页面的功能。
另一个可能的选择是在您不想在数据库中存储 NULL 值的情况下使用 NoSQL 数据库,尽管我对此经验不多。
关于python - 如何在 Django 模型中添加条件字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49556810/