【发布时间】:2019-12-14 16:54:08
【问题描述】:
我在下面有我的视图我尝试了所有方法,但成功消息在基于 Django 类的 Createview 中不起作用。我哪里错了?
编辑我添加了 SuccessMessageMixin 但仍然无法正常工作。
class TaskCraeteView(SuccessMessageMixin,LoginRequiredMixin,CreateView):
model=Task
success_message = "Task Craeted successfully!"
success_url = reverse_lazy('create-task')
login_url = 'login'
template_name = 'create-task'
form_class = TaskCreateForm
get_success_url ="/"
def form_valid(self,form):
print(form.cleaned_data)
form.instance.task_assign_by = self.request.user
server = form.save(False)
server.save()
# form.save()
task= Task.objects.latest('id')
print(type(task))
for users in form.cleaned_data['task_assign_to']:
TaskComplete.objects.create(completed_by=users, task_id= task)
for p in form.cleaned_data['task_perticulars']:
task.task_perticulars.add(p)
for t in form.cleaned_data['task_subtask_name']:
task.task_subtask_name.add(t)
return HttpResponseRedirect("add")
我的模板:-
{% if messages %}
{% for message in messages %}
<div class="alert alert-{{message.tags}}">
<a href="#" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</a>
{{ message }}
</div>
{%endif%}
{% endfor %}
{% endif %}
使用 HttpResponseRedirect 时如何发送成功消息?
【问题讨论】:
-
我也面临同样的问题
标签: django django-templates django-views