假设我有这些类:
models.py
class Parent(models.Model):
title = models.CharField(max_length=250)
class Child(models.Model):
parent = models.ForeignKey(Parent)
title = models.CharField(max_length=250)
class Family(models.Model):
title = models.CharField(max_length=250)
parent = models.ForeignKey(Parent)
child = models.ManyToManyField(Child)
此代码的问题家庭表格显示了所有"儿童"对象。
我只有在孩子与家庭形式的"父"对象相关时才需要显示"孩子"对象。
如果有一种不使用Manytomanyfield的方法,我也对此开放。
有什么想法?
也许此解决方案可以提供帮助!
class Parent(models.Model):
title = models.CharField(max_length=250)
class Child(models.Model):
parent = models.ForeignKey(Parent)
title = models.CharField(max_length=250)
class Family(models.Model):
title = models.CharField(max_length=250)
parent = models.ForeignKey(Parent)
filtered_childs = Child.objects.all().filter(parent=self.parent)
filtered_childs = list((k, v) for k, v in enumerate(filtered_childs))
child = models.CharField(choices=filtered_childs, max_length=20)