我想查询'一部电影是由哪个剧院播放?'django模式查询ManyToMany字段
我这里有一个模型:
class Movie(models.Model):
link = models.URLField()
title = models.CharField(max_length=255, null=True)
class MovieTheater(models.Model):
movietheater = models.ManyToManyField(Movie,null=True,blank=True,through="MovieShowtime")
movie_theater = models.CharField(max_length=255, null=True)
city = models.CharField(max_length=255, null=True) #east west north south
class MovieShowtime(models.Model):
theater = models.ForeignKey(MovieTheater, null=True,blank=True,related_name = 'theater')
movie = models.ForeignKey(Movie, null=True,blank=True,related_name = 'movie')
time = models.TextField(null=True,blank=True)
,如果我用这个壳: 我会得到所有的MovieShowtime
对象
obj = Movie.objects.get(link='www.test.com')
obj.movie.all()
但MovieShowtime
对象是属于许多MovieTheater
所以当我打印出来,它会得到很多重复的剧院_id
for i in obj.movie.all():
print i.theater_id
69
69
78
78
78
76
76
75
83
我怎么只能拿到69,78,76,75,83没有重复的,这样我可以知道这部电影播放在电影院
还是有方法,我可以得到movie_theater名(现场:movie_theater
)不是theatre_id直接??
喜欢:
'AMC'
'FOX'
'BLABLABLA'
我揣摩了一会儿,还是不知道。 请引导我非常感谢你。