Юра
Тогда орм не будет создавать объекты на каждую строку это тоже ускоряет
Юра
Вообщем вариантов много
Kirill
Объекты будут всё же полегче массивов
ilmiss
Добрый день, только сел за симфони после лары и юи, как в симфони обстоят дела с валидацией? Как принято делать? В ларке есть валидаторы для реквестов, юи проповедует использование моделей с rules, а в симфони как? Много всякого прошерстил но единого ответа так и не нашел.
Vlad
Vlad
ilmiss
Верно я тогда понимаю, что философия симфони это "вот вам пакеты, а дальше работает как вам удобно"?
ilmiss
Vlad
Kirill
Kirill
Раньше была популярна практика формы использовать
Kirill
Сейчас более популярно маппить запросы на ДТО, а поверх это накладывать правила валидации через атрибуты/конфиги/ещё что и уже потом при резолве проверять
Юра
Современная симфа почти вся на аттрибутах работает
Юра
Валидация роуты сервисы и т.д.
Юра
Рекомендую найти референс док по аттрибутам посмотреть что есть
Юра
И дальше копать
Михаил
Юра
Та ладно. Там почти все настроено из коробки
Юра
Поставил бандл, флекс пропишет все конфиги дальше тупо по доке делаешь и всё
Юра
Конечно всё можно перенастроить но надобностости такой обычно нет особо
Михаил
ставил, пропишет - слишком сложно
Михаил
вон ларка, ты не хотел этого, а оно уже есть. Каеф
Nikolay
Nikolay
Михаил
А так - просто прописываешь аргумент ресолвер. Делаешь интерфейс dto с 2 методоми
static function fromRequest(Request $resuest): self
function getConstrains(): Constraint
и всё. Каждая dto реализует этот метод и внутри методов прописывается правила для валидации и правила для маппинга. И абсолютно любую хрень можно провалидировать а аргумент ресолвер в случае чего и правильный ответ даст и засунет в контроллер нужную dto
Nikolay
Михаил
с любой
Denchik
Коллеги кто начинает изучение symfony предлагаю присоединиться к совместному изучению, ищу единомышленником с кем будет изучение symfony интересней и продуктивней, кто такой же как я пишите в личку)
Михаил
Даже не знаю спам это или нет, но @Cawa87
Aleksandr
Denchik
вроде не похоже
Если вы за меня то нет, не спам) новичок я просто, если нарушил правила то прошу извинения)
Aleksandr
никогда не понимал, что такое соместное изучение)
Denchik
Maks
Владимир
Владимир
Юра
Maks
vsegpt.ru сам пользуюсь
Denchik
Михаил
Михаил
Nikolay
Подскажите пожалуйста, как в packagist обновить список версий? В github сделал релиз, а packagist такое выводится This package is not auto-updated
kakoi-to-noob
Юра
Nikolay
Пакет не мой (есть доступ к организации), но я ранее делал через ручную синхронизацию. Сейчас вроде нет такой возможности
Михаил
kakoi-to-noob
Михаил
Михаил
Второй явно проще и нужен в большинстве случаев
Роман
чем проще? помоему сложнее писать сырые sql запросы, а первый варик как в ларе
Михаил
Denis
миграция - это изменение бд, выполнил готовый sql-запрос и всё.
во втором случае тебе видно, что именно будет с бд происходить, какие запросы уйдут.
а в первом - неочевидно. это скорее в помощь, если тебе надо какой-то кастомный код выполнить, чтобы самому не писать запросы
Denis
типа ты только программист на пыхе, а в базах данных не разбираешься, и не вникаешь в подробности, что там используется
Михаил
Роман
я думал не существует в симфони удобного способа создания миграций, а оказывается есть, первый вариант чище
Denis
Denis
Роман
нет сырые запросы создает
Михаил
Роман
есть способ это переключить? чтоб генерировал используя методы
Yevgeniy
Тб в автогене
Михаил
Denis
а писать миграции вручную скорее нужно только для каких-то особенных запросов, которые ты все равно методами не набилдишь скорее всего, так и придётся sql писать
Yevgeniy
Михаил
Елнур
Павел
есть способ это переключить? чтоб генерировал используя методы
Не имеет смысла. Если работаете с автогенерациями, то вы их и трогать не будете, толкьо менять. А значит билдер не билдер - не имеет значения.
Если же работаете с миграциями вручную (тут нет правильного верно авто или ручное, зависит от...) , то делайте как вам удобно. Можно и билдер, почему нет.
Но само по себе билдер тут профита не имеет. Билдер обычно нужен для автокомплита + условий. В миграциях же проще наоборот, если генерить руками, зашел в IDE накидал в таблицу изменений, IDE сгенерила код -> копипаст в миграцию.
Смысл тут переписывать на билдер?
Gleb
Пожалуйста, не надо делать из Symfony Laravel. Нравится последний - так и работайте с ним. Но имейте в виду, что многим он не нравится.
Любой более-мене опытные разработчик предпочтёт сырой SQL, т.к. он более понятен, чем билдер, который непонятно что сгенерит.
На ревью вы будете проверять что там генерирует билдер? Будете потом при апдейте версии доктрины следить, что миграция не стала другой?
Kirill
билдер вообще нужен исключительно чтоб билдить запросы кусками
Kirill
а читать из всяко удобнее в чистом виде, благо и автокомплит есть
The Ant