【问题标题】: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