Доступ ко многим многим данным в детальном представлении на основе классов с моделями в разных приложениях Django - PullRequest
0 голосов
/ 28 июня 2019

У меня есть две модели, связанные через отношения 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 или к ним применяется особый режим?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...