如何从模型中呈现多项选择字段
Posted
技术标签:
【中文标题】如何从模型中呈现多项选择字段【英文标题】:How to render multiple choices field from model 【发布时间】:2019-09-12 12:02:12 【问题描述】:我需要如下渲染产品模型:
1 - 男性/女性有 2 个复选框
当用户选中男士时,仅出现男士产品
当用户检查女性时,只会出现女性产品
同时选中或取消选中所有产品时都会出现
所以我使用了性别字段的选项,但是如何在我的模板中呈现它,如上所述?提前谢谢...
GENDER_CHOISES=(
('men', "Men"),
('women', "Women"),)
class Product(models.Model):
title = models.CharField(max_length=120)
slug = models.SlugField(blank=True, unique=True)
description = models.TextField()
price = models.DecimalField(decimal_places=2,
max_digits=20, default=39.99)
image = models.ImageField(upload_to='products',
null=True, blank=False)
featured = models.BooleanField(default=False)
active = models.BooleanField(default=True)
gender = models.CharField(max_length=120,default="women"
,choices=GENDER_CHOISES)
timestamp= models.DateTimeField(auto_now_add=True)
【问题讨论】:
【参考方案1】:如果是为了显示所有产品的视图,您可以执行以下操作:
从数据库中检索所有产品。 然后,如果选择了女性,则需要使用一些 javascript 隐藏所有男性产品,如果选择男性,则隐藏女性产品。
或者更高级的方法是使用一些 ajax 或创建一个 api 来在每次选中复选框时按想要的性别过滤产品查询集。
【讨论】:
所以你有任何javascript sn-ps这样做!以上是关于如何从模型中呈现多项选择字段的主要内容,如果未能解决你的问题,请参考以下文章