Задать вопрос

Почему форма всегда выдаёт ошибку django?

models.py
class NewsModel(models.Model):
    title = models.CharField(max_length=255, verbose_name="Название")
    quote_title = models.CharField(max_length=100, verbose_name="Цитата")
    slug = models.SlugField(max_length=255, unique=True, db_index=True, verbose_name="URL", null=False)
    image = models.ImageField(verbose_name="Изображение")
    full_text = models.TextField(verbose_name="Описание")
    date = models.DateTimeField(default=timezone.now, verbose_name="Дата и время")
    author = models.ForeignKey(User, on_delete=models.PROTECT, verbose_name="Автор")

    class Meta:
        verbose_name = "Новость"
        verbose_name_plural = "Новости"
        ordering = ["-date"]

    def __str__(self):
        return self.title

    def get_absolute_url(self):
        return reverse('slug', kwargs={'blog_slug': self.slug})

forms.py
class NewsForm(ModelForm):
    class Meta:
        model = NewsModel
        fields = ['title', 'quote_title', 'image', 'full_text']

        widgets = {
            "title": forms.TextInput(attrs={
                "class": "form-control",
                "placeholder": "Введите заголовок",
            }),
            "quote_title": forms.TextInput(attrs={
                "class": "form-control",
                "placeholder": "Введите цитату",
            }),
            "image": forms.FileInput(attrs={
                "class": "form-control",
            }),
            "full_text": forms.Textarea(attrs={
                "class": "form-control",
                "style": "resize: none; width: 640px; height: 125px; border-radius: 15px;",
                "placeholder": "Опишите новость",
            }),
        }

views.py
def create(request):
    error = ''
    if request.method == "POST":
        form = NewsForm(request.POST)
        if form.is_valid():
            form.save()
            return redirect("news")
        else:
            error = 'Форма заполнена некорректно'
    form = NewsForm()
    data = {
        "form": form,
        "error": error
    }
    return render(request, 'blogs/create.html', data)

При любом заполнении формы выводит ошибку error. Вожусь уже достаточно долго, не могу понять где ошибка
  • Вопрос задан
  • 55 просмотров
Подписаться 1 Простой 1 комментарий
Пригласить эксперта
Ответы на вопрос 1
@maksam07
form = NewsForm(request.POST, request.FILES)может так?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы