我有下面的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
复制相似问题