Size: a a a

Django [ru] #STAY HOME

2020 January 31

DT

Dan Tyan in Django [ru] #STAY HOME
Который и будет валидировать
источник

ЯК

Ярослав Коробейников in Django [ru] #STAY HOME
То бишь валидации в джанге делаются в слое сериализатора?
источник

DT

Dan Tyan in Django [ru] #STAY HOME
Да
источник

ЯК

Ярослав Коробейников in Django [ru] #STAY HOME
Ярослав Коробейников
Тоько судя по сообщению сработала валидация max_length модели
Тогда почему здесь не сработала валидация сериализатора?
источник

ЯК

Ярослав Коробейников in Django [ru] #STAY HOME
Ярослав Коробейников
А если имя меньше 3 знаков, то сработает валидация из сериалайзера
А здесь сработала?
источник

ЯК

Ярослав Коробейников in Django [ru] #STAY HOME
Он (сериалайзер) под капотом сначала прогоняет валидации модели (max_length) а потом свои валидации??
источник

A

Andrey in Django [ru] #STAY HOME
Dan Tyan
Во вторых предполагается что перед моделью стоит сериализаторе
А должен ли сериализатор заниматься валидацией?
S – single responsibility
источник

DT

Dan Tyan in Django [ru] #STAY HOME
Про порядок не скажу но да
источник

ЯК

Ярослав Коробейников in Django [ru] #STAY HOME
Тогда нахера мне ситуация когда какая та часть валидаций в модели проходит, а какая-то в сериалайзере? Два уровня валидаций разных?
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Ярослав Коробейников
Тогда нахера мне ситуация когда какая та часть валидаций в модели проходит, а какая-то в сериалайзере? Два уровня валидаций разных?
источник

DT

Dan Tyan in Django [ru] #STAY HOME
Ярослав Коробейников
Тогда нахера мне ситуация когда какая та часть валидаций в модели проходит, а какая-то в сериалайзере? Два уровня валидаций разных?
Вся валилация в сериализаторе
источник

DT

Dan Tyan in Django [ru] #STAY HOME
Просто сериализатор считывает валидаторы с моодели и запускает на своем уровне
источник

ЯК

Ярослав Коробейников in Django [ru] #STAY HOME
Dan Tyan
Просто сериализатор считывает валидаторы с моодели и запускает на своем уровне
Ну тогда почему не писать все валидации там, в модели? Если этот сериалайзер их подтягивает?
источник

DT

Dan Tyan in Django [ru] #STAY HOME
Ярослав Коробейников
Ну тогда почему не писать все валидации там, в модели? Если этот сериалайзер их подтягивает?
Ну во первых пиши, в чем проблема?
В поле модели укажи список валидаторов

Во вторых не всё можно валидировать таким способом
источник

ЯК

Ярослав Коробейников in Django [ru] #STAY HOME
Dan Tyan
Ну во первых пиши, в чем проблема?
В поле модели укажи список валидаторов

Во вторых не всё можно валидировать таким способом
Именно! Если я в модели в филде добавлю валидаторс, он будет валидировать только это значение, а что если есть два поля , старт_тайм и енд_тайм, и естественно енд тайм не может быть меньше старта. Но валидаторами на филды это не проверишь ибо они только одно значение принимают
источник

ЯК

Ярослав Коробейников in Django [ru] #STAY HOME
Естественно и эту статью я тоже читал перечитал
источник

ЯК

Ярослав Коробейников in Django [ru] #STAY HOME
Dan Tyan
Ну во первых пиши, в чем проблема?
В поле модели укажи список валидаторов

Во вторых не всё можно валидировать таким способом
Ну задача же по сути тривиальная,  я хочу создать объект новый, провалидировать его ВЕСЬ перед сохранением и если всё хорошо, сохранить. Неужели это так сложно?
источник

ЯК

Ярослав Коробейников in Django [ru] #STAY HOME
Dan Tyan
Ну во первых пиши, в чем проблема?
В поле модели укажи список валидаторов

Во вторых не всё можно валидировать таким способом
А теперь предположим у пользователя мы естественно в сериализаторе exclud'им поле password
Теперь пользователь регается, как в сериализаторе провалидировать пароль если он exclude?
источник

AS

Alexander Shavelev in Django [ru] #STAY HOME
Ярослав Коробейников
А теперь предположим у пользователя мы естественно в сериализаторе exclud'им поле password
Теперь пользователь регается, как в сериализаторе провалидировать пароль если он exclude?
так exclude на отдачу данных клиенту, не?
источник

AS

ASergey Shakiel in Django [ru] #STAY HOME
Я вот тоже никак не привыкну к такой валидации в джанго. В рнр было проще ( к примеру в ларавель или симфони), в ноджс тянул отдельный пакет для валидаций обьектов. В джанго приходится писать разные сериализаторы, как для создания сущности так и для обновления ( можно написать один, в котором сработают разные методы на создание и апдейт отдельно), на показ данных клиенту пишу третий :) И вроде это норм, но привыкнуть тяжело
источник