Отображение значений внешнего ключа в подробном представлении Django
У меня есть основная таблица БД Radni_nalozi (Заказы на работу), к которой я присоединяю Stavke (предметы) по внешнему ключу. Когда я перехожу к просмотру подробностей о конкретном рабочем заказе, я также хочу отобразить все предметы, которые связаны с этим рабочим заказом по внешнему ключу.
Я пробовал много разных подходов и, кажется, что я просто не могу разобраться в этом самостоятельно. Я прилагаю код ниже. В шаблоне HTML я могу получить только подробную информацию о конкретных рабочих заказах, но не о предметах.



Добавьте get_context_data к вашему представлению деталей, чтобы получить объект и получить все элементы, связанные с этим объектом
class RadniDetailView(DetailView):
# ..... remain code ......
def get_context_data(self):
context = super(RadniDetailView, self).get_context_data()
radni_obj = self.object
context['object'] = radni_obj
# Get all items/Stavke related to the work order/Radni_nalozi
context['items'] = Stavke.objects.filter(Rn=radni_obj)
return context
Внутри HTML вы можете отобразить все элементы следующим образом
{% for item in items %}
{{ item }}
{% endfor %}
Если вы используете ForeignKey в django, вы можете получить доступ ко всем строкам, которые связаны с одной строкой, используя параметр "related_name".Чтобы получить все элементы, которые связаны с этим Work Order(id=1) по внешнему ключу.
radni_nalozi_obj = Radni_nalozi.objects.get(id=1) radni_nalozi_obj.stavka //we are using related_name that is mentioned in "Stavke" model for "Artikl" foreignkkey.В представлении деталей, возможно, придется изменить объект контекста перед возвратом.
