gpt4 book ai didi

python - 使用基于类的 View 传递请求对象以形成实例

转载 作者:行者123 更新时间:2023-11-28 20:26:10 25 4
gpt4 key购买 nike

您好,我想使用 snippet使用基于类的 View ,但此表单的实例必须传递一个 User 对象 ex。

theform = forms.PasswordReset(request.user,request.POST)

这里有一个问题,如何使用基于类的 View 来做到这一点:

class UserChangePassword(FormView):
form_class = PasswordReset
template_name = 'profile/change_password.html'
success_url = reverse_lazy('user_account')

最佳答案

这里有两个选择:

编写您自己的 get_form 方法。

def get_form(self, form_class):
return form_class(self.request.user, self.request.POST)

编写您自己的 get_form_kwargs 并更新表单的代码。

def get_form_kwargs(self):
kwargs = super(UserChangePassword, self).get_form_kwargs()
kwargs.update({'user': self.request.user, 'post': self.request.POST})
return kwargs

在这种情况下,您还需要更新表单以正确使用 kwargs 对。

关于python - 使用基于类的 View 传递请求对象以形成实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12449828/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com