Size: a a a

Laravel Framework Russian Community

2020 October 26

DP

Definitely Not Peter... in Laravel Framework Russian Community
У Laravel есть аналог валидатора pydantic (python, фреймворк -  FastAPI) ?
Т.е. запрос описывается в виде класса с полями, у каждого поля прописана аннотация типа
источник

DP

Definitely Not Peter... in Laravel Framework Russian Community
Пример на python:
 class MyRequest(BaseModel):
     age: int
     name: str
             
places: List[str]
     salary:int
источник

pf

public function in Laravel Framework Russian Community
Definitely Not Peter Capaldi
У Laravel есть аналог валидатора pydantic (python, фреймворк -  FastAPI) ?
Т.е. запрос описывается в виде класса с полями, у каждого поля прописана аннотация типа
Зачем так? В ларке реквесты валидируешь и прекрасно
источник

ВС

Владимир Свешников... in Laravel Framework Russian Community
Я это делаю ручками..
Запрос это не запрос а сущность
У сущности конечно есть запросы
Поля, это то из чего вы сущность в конструкторе собираете(Назовём их структуры)
Сама сущность это их агрегатор
А в базе с этим работает какой нибудь маппер объектов типа Doctrine 😅😅😅
источник

DP

Definitely Not Peter... in Laravel Framework Russian Community
public function
Зачем так? В ларке реквесты валидируешь и прекрасно
А если у меня в реквесте в одном из полей может быть значение одного из заранее определенных типов, как тогда составить правило валидации ?
Или проще, например, значением поля может быть число либо массив строк
источник

DP

Definitely Not Peter... in Laravel Framework Russian Community
Владимир Свешников
Я это делаю ручками..
Запрос это не запрос а сущность
У сущности конечно есть запросы
Поля, это то из чего вы сущность в конструкторе собираете(Назовём их структуры)
Сама сущность это их агрегатор
А в базе с этим работает какой нибудь маппер объектов типа Doctrine 😅😅😅
Да, и мне эти поля нужно валидировать
источник

DP

Definitely Not Peter... in Laravel Framework Russian Community
По вышеописанной логике
источник

ВС

Владимир Свешников... in Laravel Framework Russian Community
Так эти структуры в себе содержат правила валидации
И валидируют сами себя через агрегатор :D
источник

ВС

Владимир Свешников... in Laravel Framework Russian Community
Они же для того и нужны
источник

ВС

Владимир Свешников... in Laravel Framework Russian Community
Вот какой нибудь токен для юзера например
источник

ВС

Владимир Свешников... in Laravel Framework Russian Community
Это то самое поле о котором вы говорите, оно самостоятельно, и как вы можете заметить вы не сможете передавая его, подсунуть что нибудь не то
UPD: Я ставлю чисклеймер на то что это около DDDшное ООП
И переходить с Ларавел ActiveRecord на него конечно не надо
Это я просто кинул на задуматься
источник

DP

Definitely Not Peter... in Laravel Framework Russian Community
У меня была идея создать для каждого запроса класс и фабричный метод, принимающий на вход Request и класс-запрос
класс-запрос - аналог модели в pydantic, в нём определить статический метод fromRequest, возвращающий объект того же класса
И strict_types включить
источник

DP

Definitely Not Peter... in Laravel Framework Russian Community
и ловить исключение TypeError
источник

ВС

Владимир Свешников... in Laravel Framework Russian Community
Тогда сразу идите почитайте доку к Doctrine, вам понравится
источник

ВС

Владимир Свешников... in Laravel Framework Russian Community
источник
2020 October 27

DP

Definitely Not Peter... in Laravel Framework Russian Community
Владимир Свешников
Тогда сразу идите почитайте доку к Doctrine, вам понравится
https://symfony.com/doc/current/validation.html
Собственно вот это решение и нужно было
источник

РК

Роман Кочетов... in Laravel Framework Russian Community
Vladimir Kravchenko
Можно.
1) Создай вот такой вот сид:
https://paste.laravel.io/96d4e5dc-d69c-497f-9c18-e04c3682bb2e
2) В админке меняй значения на нужные
3) Ну и потом получай в нужном месте вот так
https://github.com/Laravel-Backpack/Settings#programmer
В БД запишется имя картинки, а сама картинка переместится? https://prnt.sc/v7mfj0
источник

П

Просто Дэнчик... in Laravel Framework Russian Community
Роман Кочетов
В БД запишется имя картинки, а сама картинка переместится? https://prnt.sc/v7mfj0
поместиться то поместится, но это такое... решение, база быстро раздуется до неприличных размеров
источник

РК

Роман Кочетов... in Laravel Framework Russian Community
Просто Дэнчик
поместиться то поместится, но это такое... решение, база быстро раздуется до неприличных размеров
Этот функционал только для 3-х картинок на сайте...
источник

П

Просто Дэнчик... in Laravel Framework Russian Community
ну если так, то можно в базу пихать тогда
источник