我有下面的CreateView
class CreateEmailTemplateView(CreateView):
template_name = 'frontend/emailtemplates/create.html'
model = Templates
fields = '__all__'
def form_valid(self, form):
form.instance.user = self.request.user
return super(CreateEmailTemplateView, self).form_valid(form)模板模型如下所示
class Templates(models.Model):
name = models.CharField(max_length=128)
template = models.TextField()
user = models.ForeignKey(User, on_delete=models.CASCADE)--但是当我提交表单时,它不会将它保存在数据库中,也不会看到任何错误消息,它只是重定向到同一个页面,表单方法是POST
我遗漏了什么?如何在提交表单后显示一些错误/成功消息?
发布于 2018-08-10 07:52:00
当有效的表单数据是form_valid时,调用POSTed。请您检查一下您的数据是否有效?还可以将登录添加到form_valid方法中,以确保达到该方法:
import logging
logger = logging.getLogger(__name__)
class CreateEmailTemplateView(CreateView):
template_name = 'frontend/emailtemplates/create.html'
model = Templates
fields = '__all__'
def form_valid(self, form):
logger.info('form_valid called')
form.instance.user = self.request.user
return super(CreateEmailTemplateView, self).form_valid(form)https://stackoverflow.com/questions/51781403
复制相似问题