【问题标题】:Pass context data from generic.DetailView从 generic.DetailView 传递上下文数据
【发布时间】:2017-03-16 08:32:33
【问题描述】:

如何将来自 forms.py 的上下文数据传递给使用通用 detailView 的视图类,我需要将 forms.py 传递给我的产品详细信息页面。

这是我的视图类的代码

class ProductView(generic.DetailView):
model = Product
cart_product_form = CartAddProductForm()
context = {'cart_product_form': cart_product_form}
template_name = 'shopping/product.html'
query_pk_and_slug = True

如有不妥请告知

【问题讨论】:

    标签: python django generics detailview


    【解决方案1】:

    覆盖get_context_data,并在返回之前将表单添加到上下文中。

    class ProductView(generic.DetailView):
        model = Product
        template_name = 'shopping/product.html'
        query_pk_and_slug = True
    
        def get_context_data(self, **kwargs):
            context = super(ProductView, self).get_context_data(**kwargs)
            cart_product_form = CartAddProductForm()
            context['cart_product_form'] = cart_product_form
            return context
    

    【讨论】:

      猜你喜欢
      • 2018-01-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-31
      • 2014-12-16
      • 1970-01-01
      • 2016-06-19
      相关资源
      最近更新 更多