Django中相同模型的UpdateView的不同模板

西戈尔

因此,我在用户购物车中有一个列出不同产品的模板-我想让用户有机会从该视图更新每个产品。但是根据产品类型,我想显示不同的“ update_templates”。在这种情况下最好的方案是什么?

我应该为同一模型使用几个不同的UpdateView吗?喜欢:

class ProductType1UpdateView(UpdateView):
    model = CartItem
    fields = '__all__'
    template_name_suffix = '_product1_update_form'

class ProductType2UpdateView(UpdateView):
    model = CartItem
    fields = '__all__'
    template_name_suffix = '_product2_update_form'

还是我应该在一个视图中创建它,并添加一些if语句,这些语句将根据产品类型显示适当的模板?喜欢:

class ProductUpdateView(UpdateView):
    model = CartItem
    fields = '__all__'
    {here if statement checking product id}
         template_name_suffix = '_product1_update_form'
    {elif}
         template_name_suffix = '_product2_update_form'

第一种选择有效,但我觉得不合适。我将如何制定我的if语句以使其与第二个选项结合。还是有另一种更好的方法呢?

鲁德拉

您可以覆盖get_template_names()函数,如下所示:

class ProductUpdateView(UpdateView):
    model = CartItem
    fields = '__all__'

    def get_template_names(self):
         if self.kwargs.get('id') == 1:
             self.template_name_suffix = '_product1_update_form'
          else:
             self.template_name_suffix = '_product2_update_form'
          return super(ProductUpdateView, self).get_template_names()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

extbase扩展中的相同模型,不同模板(和操作)

来自分类Dev

Django模型datetime在模板中与数据库不同

来自分类Dev

Django模板中的嵌套模型

来自分类Dev

在Django中创建相同的模型

来自分类Dev

为相同模型但为不同控件指定数据模板

来自分类Dev

将相同关系中的不同模型关联

来自分类Dev

swagger 中相同模型的不同示例

来自分类Dev

如何在Django的不同目录中调用具有相同名称的模板?

来自分类Dev

Django中的UpdateView问题

来自分类Dev

在Django中查询相同模型时如何返回两个不同的错误消息

来自分类Dev

两种不同的模型在django管理页面中具有相同的名称

来自分类Dev

从模板访问Django CreateView中的模型名称

来自分类Dev

检查元素是否在模型中-Django模板

来自分类Dev

模板中的Django模型不可迭代

来自分类Dev

无法在Django模板中传递模型数据

来自分类Dev

检查元素是否在模型中-Django模板

来自分类Dev

从模板中的Django模型循环遍历JSON

来自分类Dev

访问Django模板中的临时模型数据?

来自分类Dev

在Django模板中获取对象的模型名称

来自分类Dev

在 Django 的模板中显示模型的计算值

来自分类Dev

通过模型字段在 Django 模板中定位

来自分类Dev

使用与Django中Foreignkey相同模型的记录

来自分类Dev

相同的模板,不同的代码?

来自分类Dev

Django相关模型和UpdateView字段

来自分类Dev

Django:相同的Comment模型适用于不同的Post类型

来自分类Dev

Django上具有相同模型的不同数据库

来自分类Dev

将updateview表单与django中的模板表单链接起来

来自分类Dev

Django-在不同模板中重用视图

来自分类Dev

Django在模板中过滤不同的父母

Related 相关文章

热门标签

归档