我有这个问题:
class Profession(models.Model):
user= models.ForeignKey(User,unique=True)
principal_area = models.ForeignKey(Area,verbose_name='Area principal',related_name='area_principal')
others_areas = models.ManyToManyField(Area)
class Area(models.Model):
area = models.CharField(max_length=150,unique=True)
slug = models.SlugField(max_length=200)
activa = models.BooleanField(default=True)
在模型1中,我有一个字段“principal_area”和其他“others_areas”。
从我的观点中,“principal_area”或“others_areas”在区域模型中的所有专业人员如何生病?
对不起,如果我不太清楚
答案 0 :(得分:2)
看看Django的Q objects。这是一个如何解决这个问题的例子:
area = Area.objects.get(**conditions)
Profession.objects.filter(
Q(principal_area = area) | Q(others_areas__in = [area])
)