Как получить доступ к полю внешней таблицы в представлении django
У меня есть две модели, модель plans & plans features (внешнее отношение с таблицей plans), приведенные ниже:
Далее следует представление, которое возвращает объект характеристик для каждого плана:
Теперь я хочу получить доступ к полю "цена" таблицы планов (модели). Как это возможно?
Мой шаблон Django выглядит следующим образом, который не работает:
Я верю, что есть решение для этого, я бы хотел услышать от вас. Спасибо
Прежде всего, при использовании filter возвращается кверисет, а не отдельный объект, поэтому вы не можете получить прямой доступ к внешнему ключу с помощью dot
Решение:
- Используйте .get()
- Использовать .filter().first()
Вы можете выбрать из двух вышеперечисленных.
Предполагается, что у вас есть уникальные записи для базового, стандартного и профессионального пакетов
plans_features.objects.get(plan__title="BASIC")
plans_features.objects.get(plan__title="STANDARD")
plans_features.objects.get(plan__title="PROFESSIONAL")
<ul class="deal-item">
{% basic.plan.price %}
</ul>
<ul class="deal-item">
{% standard.plan.price %}
</ul>
<ul class="deal-item">
{% professiona.plan.price %}
</ul>