Форма не проходит валидацию Django 4.0.4
Я для учебного проекта делаю форму добавления статьи. Для более удобной и красивой печати подключил django_summernote редактор. Однако, при каждом POST запросе форма не проходит валидацию, и я не понимаю почему. Вот мой код:
views.py
def add_article(request):
user = request.user
if request.method != 'POST':
form = AddArticleForm()
context = {
'form':form,
}
return render(request, 'usersys/add_article.html', context=context)
else:
print(request.POST)
form = AddArticleForm(request.POST, request.FILES)
if form.is_valid():
# form['user'] = user.id
form.save()
return redirect('articles')
else:
return redirect('add_article')
models.py
class Articles(models.Model):
title = models.TextField(max_length=125, null=False, verbose_name='Название статьи')
short = models.TextField(max_length=50, null=False, verbose_name='Короткое описание статьи')
text = models.TextField(max_length=10000, null=False, verbose_name='Текст статьи')
slug = models.SlugField(max_length=25, null=False, verbose_name='Ссылка')
user = models.OneToOneField(User, on_delete=models.CASCADE, null=True)
photo = models.ImageField(upload_to='articles_photos/Y%/%m/d/', null=True, blank=True )
create_time = models.DateTimeField(auto_now_add=True, verbose_name='Дата создания')
likes = models.IntegerField(null=True, blank=True, default=0)
def __str__(self):
return f"{self.title}"
def get_absolute_url(self):
return reverse('article', kwargs={ 'article_slug': self.slug,} )
class Meta:
verbose_name = 'Статьи'
verbose_name_plural = 'Статьи'
ordering = ['-create_time', 'title']
forms.py
class AddArticleForm(forms.ModelForm):
class Meta:
model = Articles
fields = ['title', 'short', 'text', 'slug', 'user']
widgets = {
'title': TextInput(attrs={'placeholder':'Название статьи'}),
'short': TextInput(attrs={'placeholder':'Анонс статьи'}),
'text': SummernoteWidget(),
}
html-код add_article.html
{% block content %}
<div class="container">
<div class="adding">
<div class="a-title">
<h1>Добавить новую статью</h1>
</div>
<div class="add-form">
<form method="post" enctype="multipart/form-data">
{% csrf_token %}<br>
{{ form.title }}<br>
{{ form.short }}<br>
{{ form.text }}<br>
{{ form.slug }}<br>
{{ form.user }}<br>
<button type="submit">Добавить</button>
</form>
</div>
</div>
</div>
{% endblock content %}
Вот, не знаю, что происходит. Помогите, пожалуйста. Мне кажется все из-за интеграции django_summernote, хотя я все подключение делал согласно документации на гитхабе