У меня есть две модели, связанные через отношения ManyToMany
, но они находятся в отдельных приложениях. Я пытаюсь загрузить детали одной модели, а затем добавить в шаблон поле manytomany
, но обычный способ не работает. Вот мой код:
models.py (приложение списков)
from listing_admin_data.models import PropertyFeatures
class Property(models.Model):
....
property_features = models.ManyToManyField(PropertyFeatures)
....
models.py (приложение перечисление_админа_данных)
class PropertyFeatures(models.Model):
....
feature_name = models.CharField(max_length=50)
....
views.py
class PropertyDetailView(DetailView):
model = Property
context_object_name = 'property'
Затем в шаблоне я пытаюсь это сделать, но получаю пустой список, но у меня есть данные.
<h3>Property Features</h3>
<ul class="amenities-list">
{% for feature in property.property_features.all %}
<li>{{ feature.feature_name }}</li>
{% empty %}
<li>Property has no features!</li>
{% endfor %}
</ul>
Я попытался это намеренно: <p>{{ property.property_features }}</p>
И при загрузке я получаю: listing_admin_data.PropertyFeatures.None
в браузере.
Другие поля, непосредственно связанные с загруженным объектом, работают нормально, например {{ property.price }}
, в то время как поля из ForeignKey
также работают нормально, то есть {{ property.listing.listing_title }}
. Отношения между моделями приложений обрабатываются одинаково в Django или к ним применяется особый режим?