Как отображать только продукты с определенным названием? - PullRequest
0 голосов
/ 24 мая 2018

Итак, я наконец-то смог представить свои продукты на главной странице.Но так как я пытаюсь перечислить Продукты по их брендовому названию (напечатанному в «title» при создании продукта на панели инструментов), я хочу отображать только определенные продукты с определенным названием.Я предполагал сделать это следующим образом (скажем, название, которое я набрал, было uniqlo):

        {% for product in products %}
                    {% render_product product.product_title.uniqlo %}
        {% endfor %}

, но, к сожалению, ничего не отображается.Я перепробовал множество других возможностей, но пока безуспешно.

Я также пытался выяснить, как продукт был сохранен, глядя в оболочку, но что бы я ни вставил, from..import.., который я вставил, Product.objects.all() приведет к Productне определено.

1 Ответ

0 голосов
/ 25 мая 2018

Спросите не ясно.Вы хотите всегда фильтровать по этому uniqlo заголовку?Или это для какой-то конкретной (целевой / главной) страницы?

В любом случае, простой способ (на основе того, что вы уже пробовали) -

{% for product in products %}
    {% if 'uniqlo' in product.title %}
        {% render_product product %}
    {% endif %}
{% endfor %}

Также,для импорта оболочки попробуйте

from oscar.core.loading import get_model
Product = get_model('catalogue', 'Product')

Если вы пытаетесь отфильтровать заголовок только на своей целевой / главной странице, вы можете отфильтровать продукты в самом представлении, прежде чем передавать его в шаблон -

products = Product.objects.filter(title__icontains='uniqlo')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...