如何在form_valid中使用字典上下文中的值?
eg.
def get_context_data(self, **kwargs):
context_data = super(ProductView, self).get_context_data(**kwargs)
product_obj = Product.objects.get(id=self.kwargs['pk'])
user_id = product_obj.user_id
user_obj = User.objects.get(id=user_id)
context_data['email'] = user_obj.email
return context_data
def form_valid(self, form, **kwargs):
email = context_data['email'] # need use this value
return super(ProductView, self).form_valid(form)
字符串
3条答案
按热度按时间kpbpu0081#
您可以在模板中将其作为隐藏输入:
字符串
然后在方法中:
型
lbsnaicq2#
使用Django 3.2进行测试。
字符串
4xy9mtcn3#
你可以这样做:
字符串
但你也可以这样做:
型
此外,如果使用ProductModelForm,则可以在form_valid上使用:用途:
型
Django有很多方法可以做到这一点:)
评论来自MagicHat
我喜欢带有“form.instance.user.email“的版本
但是如果你真的想调用get_context_data:
型