Django:DetailView从foreignkey获取对象
我的模型事件有一个基于类的DetailView,希望显示与foreignkey相关的kategorie条目 型号.pyDjango:DetailView从foreignkey获取对象,django,django-views,django-queryset,django-class-based-views,Django,Django Views,Django Queryset,Django Class Based Views,我的模型事件有一个基于类的DetailView,希望显示与foreignkey相关的kategorie条目 型号.py class Event(models.Model): name = models.CharField(max_length=50) def get_absolute_url(self): return reverse('events:event-detail', kwargs={'pk': self.pk}) class Kategorie(
class Event(models.Model):
name = models.CharField(max_length=50)
def get_absolute_url(self):
return reverse('events:event-detail', kwargs={'pk': self.pk})
class Kategorie(models.Model):
event = models.ForeignKey(Event)
def get_absolute_url(self):
return reverse('events:kategorie-detail', kwargs={'pk': self.pk})
class EventDetail(generic.DetailView):
model = Event
context_object_name = 'event'
视图.py
class Event(models.Model):
name = models.CharField(max_length=50)
def get_absolute_url(self):
return reverse('events:event-detail', kwargs={'pk': self.pk})
class Kategorie(models.Model):
event = models.ForeignKey(Event)
def get_absolute_url(self):
return reverse('events:kategorie-detail', kwargs={'pk': self.pk})
class EventDetail(generic.DetailView):
model = Event
context_object_name = 'event'
事件详细信息.html
如何获取与活动相关的kategories?到目前为止,我一直使用函数视图
{kategorien%中的kategorie为%
{%endfor%}
您使用的视图与此无关。您只需遍历event.kategorie\u集合。所有您的event\u detail.html
都应具有以下内容:
<ul>
{% for kategorie in event.kategorie_set.all %}
<li><a href="{% url 'events:kategorie-detail' kategorie.id %}">{{ kategorie }}</a></li>
{% endfor %}
</ul>
{event.kategorie_set.all%}
{%endfor%}