def clear_title(self):
data = self.cleaned_data['title']
print(title)
if len(data) > 200:
raise ValidationError(_('Название книги не должно превышать 200 символов'))
if len(data) < 2:
raise ValidationError(_('Название книги должно иметь хотя бы один символ'))
return data
Вьюха:
if form.is_valid():
title = form.cleaned_data['title']
print(title, len(title) > 200)
Можете сказать почему не работает проверка валидности формы? Возвращает тру, даже если символов больше 200)
во-первых, len(data)<1, а не 2, ну так, придирочка
покажи модели, пожалуйста
class Book(models.Model): title = models.CharField(verbose_name = "Название", max_length = 200, help_text = 'Название книги') author = models.ForeignKey('Author', on_delete = models.SET_NULL, null = True, verbose_name = 'Автор', related_name = 'book') summary = models.TextField("Описание",max_length = 1000, help_text = "Краткое описание книги") isbn = models.CharField('ISBN', max_length = 13, help_text = 'ISBN number') genre = models.ManyToManyField(Genre, help_text = "Выберите жанр для этой книги", verbose_name = "Жанр", related_name = 'book') def name(self): return 'Книга' def str(self): return self.title def get_absolute_url(self): return reverse('book-detail', args = [str(self.id)]) def display_genre(self): return ', '.join([genre.name for genre in self.genre.all()[:3]]) display_genre.short_description = 'Жанр' class Meta: permissions = (('can_edit_book', 'Может редактировать книги'), )
разве можно реализовывать функции в forms.py???
Я без понятия, я делаю по уроку мозиллы
clear title должен быть либо методом в models, либо во вью
я прикупил огромный байк..
на меня все смотрят и
типичный джанго чат
ща нам ро дадут, лучше в джанго флуд
Обсуждают сегодня