如何从模型中呈现多个选择字段

时间:2019-04-23 10:12:02

标签: javascript jquery django django-models django-templates

我需要按照以下方式呈现产品模型:

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 个答案:

答案 0 :(得分:1)

如果该视图用于显示所有产品,则可以执行以下操作:

从数据库中检索所有产品。 然后,如果选择了女性,则需要使用一些JavaScript来隐藏所有男性产品,如果选择了男性,则需要隐藏女性产品。

或者,更高级的方法是每次选择一个复选框时,使用一些ajax或创建一个api来根据所需性别过滤产品查询集。

相关问题