Можете сказать почему не работает проверка валидности формы?

|
One_of_the_Stoics 2022-06-30 22:10:19
brodskij 2022-06-30 22:09:56
Ну да. Только редис — это ин мемори хранилище, нет?

Причём тут место хранения данных?

NikolayCherniy 2022-06-30 22:10:32
brodskij 2022-06-30 22:09:56
Ну да. Только редис — это ин мемори хранилище, нет?

не обязательно, просто инмемори быстрее, так-то и sqlite тоже инмемори может))

brodskij 2022-06-30 22:11:03
One_of_the_Stoics 2022-06-30 22:10:19
Причём тут место хранения данных?

Ибо ин мемори хранилище != Бд

brodskij 2022-06-30 22:11:14
NikolayCherniy 2022-06-30 22:10:32
не обязательно, просто инмемори быстрее, так-то и sqlite тоже инмемори может))

Ну да

One_of_the_Stoics 2022-06-30 22:11:17
brodskij 2022-06-30 22:11:03
Ибо ин мемори хранилище != Бд

С чего вдруг?

brodskij 2022-06-30 22:11:30
Это холиварный вопрос
One_of_the_Stoics 2022-06-30 22:11:53
Не надёжность хранения данных не делает их не данными и хранилище не хранилищем
brodskij 2022-06-30 22:12:31
One_of_the_Stoics 2022-06-30 22:11:53
Не надёжность хранения данных не делает их не данными и хранилище не хранилищем

Я этого не говорил

One_of_the_Stoics 2022-06-30 22:15:58
Классификация по среде хранения различает базы данных, хранящие данные во вторичной памяти («традиционные», англ. conventional database), резидентные (все данные на стадии исполнения находятся в оперативной памяти) и третичные (англ. tertiary database), хранящие данные на отсоединяемых устройствах массового хранения — на основе магнитных лент или оптических дисков.
One_of_the_Stoics 2022-06-30 22:17:07
Флешка место хранения данных
NikolayCherniy 2022-06-30 22:21:02
Эх @idandrey нарекомендовал конечно литературы нам на голову))
magicddwq 2022-06-30 22:22:38
Как в Django сделать хеш таблицу?
brodskij 2022-06-30 22:22:56
magicddwq 2022-06-30 22:22:38
Как в Django сделать хеш таблицу?

Что?

idandrey 2022-06-30 22:28:03
magicddwq 2022-06-30 22:22:38
Как в Django сделать хеш таблицу?

a = {}

peregasiratik 2022-06-30 22:28:33
magicddwq 2022-06-30 22:22:38
Как в Django сделать хеш таблицу?

словарь обычный и всё

ohahahhahahah 2022-06-30 22:46:50
class EditBookForm(forms.Form):
title = forms.CharField(help_text = ‘Введите название книги’)

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)

peregasiratik 2022-06-30 22:48:12
ohahahhahahah 2022-06-30 22:46:50
class EditBookForm(forms.Form):
title = forms.CharField(help_text = ‘Введите название книги’)

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, ну так, придирочка

ohahahhahahah 2022-06-30 22:48:49
peregasiratik 2022-06-30 22:48:12
во-первых, len(data)<1, а не 2, ну так, придирочка

Ой, на это не обращай внимание, я просто чекнул, будет ли фелс еси символов меньше 2)

peregasiratik 2022-06-30 22:49:09
ohahahhahahah 2022-06-30 22:46:50
class EditBookForm(forms.Form):
title = forms.CharField(help_text = ‘Введите название книги’)

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)

покажи модели, пожалуйста

ohahahhahahah 2022-06-30 22:49:25
peregasiratik 2022-06-30 22:49:09
покажи модели, пожалуйста

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’, ‘Может редактировать книги’), )

One_of_the_Stoics 2022-06-30 22:49:50
ohahahhahahah 2022-06-30 22:49:25
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’, ‘Может редактировать книги’), )

gist.github.com

peregasiratik 2022-06-30 22:51:18
ohahahhahahah 2022-06-30 22:46:50
class EditBookForm(forms.Form):
title = forms.CharField(help_text = ‘Введите название книги’)

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)

разве можно реализовывать функции в forms.py???

LUBASKIN_CODE 2022-06-30 22:51:44
peregasiratik 2022-06-30 22:51:18
разве можно реализовывать функции в forms.py???

да

LUBASKIN_CODE 2022-06-30 22:51:58
методы
ohahahhahahah 2022-06-30 22:52:01
peregasiratik 2022-06-30 22:51:18
разве можно реализовывать функции в forms.py???

Я без понятия, я делаю по уроку мозиллы

LUBASKIN_CODE 2022-06-30 22:52:27
ohahahhahahah 2022-06-30 22:52:01
Я без понятия, я делаю по уроку мозиллы

что за ValidationError(_(..))

peregasiratik 2022-06-30 22:52:36
ohahahhahahah 2022-06-30 22:52:01
Я без понятия, я делаю по уроку мозиллы

clear title должен быть либо методом в models, либо во вью

LUBASKIN_CODE 2022-06-30 22:52:38
что за первый аргумент такой?
LUBASKIN_CODE 2022-06-30 22:52:49
peregasiratik 2022-06-30 22:52:36
clear title должен быть либо методом в models, либо во вью

нет

backinblacknext 2022-06-30 22:52:53
peregasiratik 2022-06-30 22:52:36
clear title должен быть либо методом в models, либо во вью

я прикупил огромный байк..

ohahahhahahah 2022-06-30 22:52:59
LUBASKIN_CODE 2022-06-30 22:52:38
что за первый аргумент такой?

from django.utils.translation import gettext_lazy as _

peregasiratik 2022-06-30 22:53:00
backinblacknext 2022-06-30 22:52:53
я прикупил огромный байк..

ода

LUBASKIN_CODE 2022-06-30 22:53:00
назови clean_title, а не clear
LUBASKIN_CODE 2022-06-30 22:53:10
backinblacknext 2022-06-30 22:52:53
я прикупил огромный байк..

на меня все смотрят и

backinblacknext 2022-06-30 22:53:17
LUBASKIN_CODE 2022-06-30 22:53:10
на меня все смотрят и

типичный джанго чат

peregasiratik 2022-06-30 22:53:30
LUBASKIN_CODE 2022-06-30 22:53:10
на меня все смотрят и

ща нам ро дадут, лучше в джанго флуд

LUBASKIN_CODE 2022-06-30 22:53:34
LUBASKIN_CODE 2022-06-30 22:53:00
назови clean_title, а не clear

тогда будет работать

peregasiratik 2022-06-30 22:53:48
LUBASKIN_CODE 2022-06-30 22:53:34
тогда будет работать

почему???

LUBASKIN_CODE 2022-06-30 22:54:11
peregasiratik 2022-06-30 22:53:48
почему???

потому что переопределение валидации поля формы делается через clean_<field>

ohahahhahahah 2022-06-30 22:54:16
LUBASKIN_CODE 2022-06-30 22:53:34
тогда будет работать

АХаххаха

LUBASKIN_CODE 2022-06-30 22:54:26
ohahahhahahah 2022-06-30 22:54:16
АХаххаха

што

ohahahhahahah 2022-06-30 22:54:36
рили, я когда переписывал код с урока, не заметил что там n, а не r, спасибо)
LUBASKIN_CODE 2022-06-30 22:54:45
на здоровье
LUBASKIN_CODE 2022-06-30 22:55:30
извиняюсь за флуд
но я хочу сказать что фанат сереги пирата, я плейлист себе целый собрал
peregasiratik 2022-06-30 23:04:42
LUBASKIN_CODE 2022-06-30 22:54:11
потому что переопределение валидации поля формы делается через clean_<field>

а, да, всё, ченкул доки, реально

idandrey 2022-06-30 23:04:50
Мое тп отменено
peregasiratik 2022-06-30 23:05:07
idandrey 2022-06-30 23:04:50
Мое тп отменено

я собираю на ама радик

backinblacknext 2022-06-30 23:05:36
idandrey 2022-06-30 23:04:50
Мое тп отменено

ну типичный питонюга, фанат переги

peregasiratik 2022-06-30 23:07:09
LUBASKIN_CODE 2022-06-30 22:54:11
потому что переопределение валидации поля формы делается через clean_<field>

а если переопределить просто метод clean() без поля конкретного, что случится?

peregasiratik 2022-06-30 23:07:19
и вообще, есть ли в этом смысл?
|