相关

时间:2010-08-23 18:23:07

标签: django django-models django-views

我有这个问题:

model.py(1)

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)

model.py(2)

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”在区域模型中的所有专业人员如何生病?

对不起,如果我不太清楚

1 个答案:

答案 0 :(得分:2)

看看Django的Q objects。这是一个如何解决这个问题的例子:

area = Area.objects.get(**conditions)
Profession.objects.filter(
    Q(principal_area = area) | Q(others_areas__in = [area])
)