我正在与Satchmo framework一起建立eshop。 有没有人知道我应该遵循什么步骤来根据自定义属性(材料类型)过滤产品,以便在页面中呈现具有相同类型材料的产品(material.html)? 我应该做一个material_view函数 我应该重写get_absolute_url函数吗?按属性过滤产品
Q
按属性过滤产品
1
A
回答
0
当你说“自定义属性”时,你的意思是你修改了product.models.Product
代码来添加另一个字段?
如果是这种情况,您可能需要创建自定义视图。
如果你的产品代码是一样的东西......
class Product(models.Model):
...
matieral_type = models.CharField(max_length=128)
...
...那么你可以建立这样的观点...
def material(request,material_type):
prods = Product.objects.filter(material_type=material_type)
return render_to_response('material.html',{'products',prods},RequestContext(request))
1
如果你想这样做不接触核心代码,我会做一个本地的应用程序localsite /产品和models.py:
class Material(models.Model):
product = models.ManyToManyField(Product, blank=True, null=True)
name = models.CharField(_("Name"), max_length=30)
slug = models.SlugField(_("Slug"), help_text=_("Used for URLs, auto-generated from name if blank"), blank=True, unique=True)
description = models.TextField(_("Description"), blank=True, help_text="Optional")
添加新的应用程序到您的管理员,并额外提供使他们从产品页面,将其添加为内联:
# if you have lots of products, use the nice horizontal filter from django's admin
class MaterialAdmin(admin.ModelAdmin):
filter_horizontal = ('product',)
class Material_Inline(admin.TabularInline):
model = Material.product.through
extra = 1
admin.site.register(Material, MaterialAdmin)
# Add material to the inlines (needs: from product.admin import Product, ProductOptions)
ProductOptions.inlines.append(Material_Inline)
admin.site.unregister(Product)
admin.site.register(Product, ProductOptions)
然后,你可以调整你的意见/网址:
# urls.py
url(r'^material-list/([\w-]+)/$', material_list, {}, name="material_list"),
# view.py
def material_list(request, slug):
products = Product.objects.filter(material__slug='slug')
return render_to_response('localsite/material/list.html', {'products':products}, context_instance=RequestContext(request))
相关问题
- 1. Woocommerce:按属性显示产品过滤
- 2. 过滤产品类别和产品的目录按产品的属性
- 3. MYSQL过滤器产品通过属性
- 4. Woocommerce - 基于属性的过滤产品
- 5. 按产品过滤订单
- 6. 按价格过滤产品
- 7. 按产品属性过滤Magento类别集合?
- 8. 用其他属性过滤magento的产品属性
- 9. 产品过滤
- 10. 如何使用isSaleable属性过滤产品的可用性?
- 11. 通过magento中的属性过滤产品
- 12. 按子节点过滤产品数
- 13. 产品目录:按参数过滤
- 14. 无法按type_id过滤产品集合
- 15. C# - Magento:按category_id过滤产品
- 16. Moq单元测试按产品类别过滤产品
- 17. 查询/过滤器woocommerce产品按产品类型
- 18. 在magento的产品列表页面上添加按属性过滤器?
- 19. Magento:获取按属性过滤的产品集合的订单项集合
- 20. 导入产品后属性过滤器不工作
- 21. 如何使用自定义属性过滤产品列表
- 22. Magento过滤产品的自定义属性
- 23. 具有与数据产品列表过滤问题属性
- 24. Magento 2根据产品属性过滤运输方法
- 25. 产品收藏过滤多选择属性在magento
- 26. 如何获得prestashop过滤产品的属性
- 27. PHP:按属性过滤XML?
- 28. Rails按has_and_belongs_to_many属性过滤
- 29. Magmi产品属性
- 30. Magento - 按属性获取产品数量
andzep我爱你。我正在进入satchmo自定义疯狂,但这个答案在30分钟内完成! – 2011-11-11 10:26:21