Size: a a a

2021 May 20

SA

Sergey Arkhipov in rannts
У нас сейчас используется кастомная валидация на базе marshmallow с лютыми самописными подпорками, чтобы уйти от бойлерплейта. И все равно работать с этим куда менее приятно, хоть некоторые вещи можно делать намного более гибко
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Шумность коландера можно уменьшить, если сделать готовые "ноды" под нужные типы данных. Из коробки у них ноды и типы - это отдельные сущности, которые надо комбинировать. Но ничто не мешает у себя определить классы нод с уже указанными типами. Тогда вместо
count = colander.SchemaNode(colander.Integer())
можно будет писать
count = schemas.IntegerNode()

И да, он более гибкий.
Кастомные валидаторы можно переиспользовать, т.к. это просто внешние функции, а не класс-методы для схемы.
Так же в коландере можно указать "контекст" в котором происходит десериализация или сериализация данных, и этот контекст можно использовать в валидаторах (например достать из request-а конект к базе). Или что-то поменять в самой схеме на основе контекста (например добавить новые поля - полезно когда используются всякие IoC штуки в проекте).

Для меня в нём только один минус - не поддерживается IDE-шками, выдаёт на выходе словарик и надо самому сверяться со схемой, какие поля должны быть в словарике. Не получится использовать схему в аннотациях типа.
источник

SA

Sergey Arkhipov in rannts
Я понимаю. В Marshmallow примерно так же можно делать
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Есть мысль запилить класс-враппер, который будет выглядеть как dataclass, но будет внутри себя создавать соответствующую colander схему. Тогда можно будет избавиться от основного минуса с поддержкой IDE.
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Никто не встречал готовую реализацию для хранения настроек в базе данных? Но не плоских, а с достаточно сложной структурой. Что-то вроде того, как работает gsettings в гноме (или dconf  - GUI для него). И что бы была веб-админка для всего этого, которая может себя "рисовать" на основе заданных в коде схем для настроек.
Очень хочется такую штуку, а то уже задрали россыпи yaml файлов. Хочется по человечески, через веб-админку зайти посмотреть как всё настроено и при необходимости что-то поменять.
источник

RB

Roman Bolkhovitin in rannts
Консул? )
источник

KK

Kirill (Cykooz) Kuzm... in rannts
В первую очередь пожалуй интересует админка. Т.к. на бекенде я смогу это всё придумать. А вот приверчивать к этому админку будет больно, т.к. скорее всего придётся трогать JS-фреймворки.
источник

D

Dmitry in rannts
django admin))
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Ну вот я тоже начал думать над тем, что бы просто генерить html формы на бекенде и похер на всякие Single page app на JS-ах
источник

V

Victor in rannts
#whois
Привет всем, я дата сатанист с опытом.
Пилю модели для бизнесов.
источник

RB

Roman Bolkhovitin in rannts
а скажи что-нибудь на сатанистском 😊
источник

F

Fred in rannts
import numpy ^)
источник

RB

Roman Bolkhovitin in rannts
pandas as pd
numpy as np
источник

V

Victor in rannts
ну да, типо того)
источник

『Serg』 in rannts
скоро там восстание машин?
источник

in

ildar nizamov in rannts
уже. мы же в матрице
источник

💭П

💭 Руслан Прохоров... in rannts
так вчера было, а сеголдня закончилось )
источник

『Serg』 in rannts
оно по средам чтоли?
источник

💭П

💭 Руслан Прохоров... in rannts
каждую среду )
источник

in

ildar nizamov in rannts
после обеда
источник