2013-08-26 159 views
0

我在Django中有一个对象,其中一个属性是ManyToMany关系。 好吧,现在我已经得到了对象,并且想知道是否有数据相关,我该怎么做?Django过滤器来自单个对象的ManyToMany关系

下面的代码:

u = request.user 
ide = request.POST['id'] 
defob = DefObjc.objects.get(id=ide) 
if defob.filter(student_def=u).exists(): 
    #do things 

而这里的对象类:

class DefObjc(models.Model): 
    name = models.CharField(max_length=100, blank=True, null=True) 
    date = models.DateTimeField(blank=True, null=True) 
    student_def = models.ManyToManyField(User, related_name='DefObjc_relation', blank=True, null=True) 

我怎样才能做到这一点?

回答

1

get()的结果是模型实例,而不是QuerySet,因此您无法对其进行过滤。相反:

if defob.student_def.filter(id=u.id).exists(): 
    # do things 
+0

它的工作完美。非常感谢! – Sascuash

相关问题