在 FormView form_invalid 内显示 django 消息
show django messages inside form_invalid of FormView
当表单无效时,如何在使用 FormView class 时显示消息?我可以在 form_valid 函数中显示消息,但不知道 form_invalid,因为我正在使用 self.get_context_data。
这是我在表单有效时显示消息的方法
def form_valid(self, form):
messages.success(self.request, '{0} added successfully'.format(name))
return HttpResponseRedirect('/')
如何在这里使用消息?
def form_invalid(self, form):
return self.render_to_response(self.get_context_data(form=form))
可能喜欢这个;
def form_invalid(self, form):
name = 'john'
messages.warning(self.request, '{0} error'.format(name))
return self.render_to_response(
self.get_context_data(request=self.request, form=form))
解释:
messages.warning(self.request, '{0} error'.format(name))
放在self.render_to_response(**kwargs)
之前,为什么?这是为了用您的消息更新您的self.request
。
和 self.render_to_response(**kwargs)
正在使用 **kwargs
参数。
其中之一用于 form
和 request
字段。看到这个 docs.
当表单无效时,如何在使用 FormView class 时显示消息?我可以在 form_valid 函数中显示消息,但不知道 form_invalid,因为我正在使用 self.get_context_data。
这是我在表单有效时显示消息的方法
def form_valid(self, form):
messages.success(self.request, '{0} added successfully'.format(name))
return HttpResponseRedirect('/')
如何在这里使用消息?
def form_invalid(self, form):
return self.render_to_response(self.get_context_data(form=form))
可能喜欢这个;
def form_invalid(self, form):
name = 'john'
messages.warning(self.request, '{0} error'.format(name))
return self.render_to_response(
self.get_context_data(request=self.request, form=form))
解释:
messages.warning(self.request, '{0} error'.format(name))
放在self.render_to_response(**kwargs)
之前,为什么?这是为了用您的消息更新您的self.request
。
和 self.render_to_response(**kwargs)
正在使用 **kwargs
参数。
其中之一用于 form
和 request
字段。看到这个 docs.