簡體   English   中英

Django CreateView無法正常工作

[英]Django CreateView Not Working as expected

我有以下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

我想念什么? 提交表單后如何顯示一些錯誤/成功消息?

form_valid有效的表單數據后,將調用form_valid。 您能否檢查您的數據是否有效? 您還可以將日志記錄添加到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)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM