Django Views Filter по связанным моделям
models.py
class TVChannel(models.Model):
"""TV канал"""
title = models.CharField("Название TV канала", max_length=50, unique=True)
slug = models.SlugField(max_length=50, unique=True)
class Region(models.Model):
"""Регион вещания"""
title = models.CharField("Регион вещания", max_length=100, unique=True)
slug = models.SlugField(max_length=100, unique=True)
def get_absolute_url(self):
return reverse('slug', kwargs={'slug': self.slug})
class TVShow(models.Model):
"""Телевизионная программа"""
title = models.CharField("Название передачи", max_length=150)
channel = models.ForeignKey(TVChannel, on_delete=models.CASCADE, verbose_name="TV канал", related_name='channel_rn')
region = models.ForeignKey(Region, on_delete=models.CASCADE, verbose_name="Регион вещания", related_name='region_rn')
Подскажите, пожалуйста, как отфильтровать во views.py, чтобы выводились только tvchannel, где есть tvshow из текущего региона?
class RegionTodayView(DetailView):
"""ТВ передачи региона"""
model = Region
template_name = 'tvprogram/region_today_detail.html'
def get_context_data(self, **kwargs):
context = super(RegionTodayView, self).get_context_data(**kwargs)
context['tvchannel'] = TVChannel.objects.order_by('id')
return context