我有一个页面,其中包含 2 个表单并允许更新附加到每个表单的模型。
我还集成了消息框架,这在很大程度上是完美的。但是在发布到此页面后,您会收到两条成功消息,我想在它们的位置显示 1 条简单消息。
我尝试了其他问题中建议的各种方法;
但我无法清除消息队列。
def post(self, request, **kwargs):
profile_valid = False
user_valid = False
post_data = request.POST or None
profile_form = self.profile_form_class(
post_data,
instance=request.user.profile,
prefix='profile'
)
user_form = self.user_form_class(
post_data,
instance=request.user,
prefix='user'
)
context = self.get_context_data(
profile_form=profile_form,
user_form=user_form
)
if profile_form.is_valid():
profile_valid = True
self.form_save(profile_form)
if user_form.is_valid():
user_valid = True
self.form_save(user_form)
if profile_valid and user_valid:
# First get the messages from the above save methods
storage = messages.get_messages(request)
for message in storage:
# Need to iterate over the messages to achieve what we need
pass
# Set the messages as used
storage.used = True
# Add our simple message
messages.success(self.request, self.success_message)
return self.render_to_response(context)
我正在使用基于会话的消息存储,但这似乎对视图中可用的内容没有影响。
我在用着;
- 姜戈 2.2
- 蟒蛇 3.7