如何只呈现具有特定标题的产品?
How to only render Products with a certain title?
所以我终于可以在主页上呈现我的产品了。
但是当我尝试按品牌名称列出产品时(在仪表板中创建产品时输入 "title"),因此我只想呈现具有特定标题名称的特定产品。
我的猜测是这样做(假设我输入的标题名称是 uniqlo):
{% for product in products %}
{% render_product product.product_title.uniqlo %}
{% endfor %}
但不幸的是没有渲染任何东西。我尝试了很多其他的可能性,但到目前为止没有运气。
我也试图通过查看 shell 来找出产品是如何保存的,但是无论我输入什么 from..import..
,Product.objects.all()
结果都不是 Product
定义。
问的不清楚。您要始终 过滤那个uniqlo
标题吗?还是针对某些特定的(登陆/主)页面?
无论如何,一个简单的方法是(基于您已经尝试过的方法)-
{% for product in products %}
{% if 'uniqlo' in product.title %}
{% render_product product %}
{% endif %}
{% endfor %}
此外,对于 shell 导入,尝试
from oscar.core.loading import get_model
Product = get_model('catalogue', 'Product')
如果您尝试仅在您的着陆页/主页中过滤标题,您可以在视图本身中过滤产品,然后再将其传递给模板 -
products = Product.objects.filter(title__icontains='uniqlo')
所以我终于可以在主页上呈现我的产品了。 但是当我尝试按品牌名称列出产品时(在仪表板中创建产品时输入 "title"),因此我只想呈现具有特定标题名称的特定产品。 我的猜测是这样做(假设我输入的标题名称是 uniqlo):
{% for product in products %}
{% render_product product.product_title.uniqlo %}
{% endfor %}
但不幸的是没有渲染任何东西。我尝试了很多其他的可能性,但到目前为止没有运气。
我也试图通过查看 shell 来找出产品是如何保存的,但是无论我输入什么 from..import..
,Product.objects.all()
结果都不是 Product
定义。
问的不清楚。您要始终 过滤那个uniqlo
标题吗?还是针对某些特定的(登陆/主)页面?
无论如何,一个简单的方法是(基于您已经尝试过的方法)-
{% for product in products %}
{% if 'uniqlo' in product.title %}
{% render_product product %}
{% endif %}
{% endfor %}
此外,对于 shell 导入,尝试
from oscar.core.loading import get_model
Product = get_model('catalogue', 'Product')
如果您尝试仅在您的着陆页/主页中过滤标题,您可以在视图本身中过滤产品,然后再将其传递给模板 -
products = Product.objects.filter(title__icontains='uniqlo')