Konstantin
если строить апи не отталкиваясь от кода, а отдельно, код всегда будет не совпадать с описанием апи. "добавили поле - забыли добавить в апи/наоборот" будет ежедневной проблемой, это не решается в общем случае никак иначе кроме как генерацией апи по аннотациям в коде
Ilya 🃏
Причем name на уровне экшена, глобальный нейм у них естественно разный, но этот баг так и не закрыли вроде
Ilya 🃏
Konstantin
наоборот
Konstantin
сначала поправили аннотацию, поле появилось само
Vlad
говорю решайте эти проблемы с помощью describer своих, да мб контракты там не удобные,но жить можно.
Konstantin
захламленный код аннотациями разумная плата за всегда актуальную схему. и можно решать проблему именно хлама - вот выше рекомендуют способы. отрывать генерацию схемы от кода - идиотизм и самоубийство в очень короткой перспективе
Ilya 🃏
Свой json response формируется
Konstantin
ну вы что-то не так готовите, очевидно. респонс должен быть аннотированным классом-дто
Konstantin
а не руками собранным респонсом в контроллере. если у вас разработка на таком уровне, то да, рано вам в генерацию апи, порешайте сначала детские проблемы в процессах
Ilya 🃏
Konstantin
о, ну началось. суньте себе в жопу ваши шуточки и лучше слушать научитесь
Konstantin
предлагаю вернуться к документированию апи. так вот, "добавилось новое поле в апи" - это "добавилось новое поле в аннотированный дто". то есть как только появилось поле в классе - оно появилось в схеме
Konstantin
не надо править несколько мест, не надо править контроллер, ровно одно место - дто с аннотацией
Konstantin
если щас у вас это не так работает и требует правки нескольких мест - решите сначала эту работу. в руками описанном апи нет смысла в свете изложенных выше причин - схема всегда будет расходиться с реальным поведением и это плохо, это множит на ноль всю пользу от схемы
Ilya 🃏
Ilya 🃏
Если второе относится только к nelmio, а не симфоневскому сериалайзеру, то второй вопрос закрыт
Ilya 🃏
Иван
Ilya 🃏
Иван
Spider
Уважаемые Участники чата
Прошу вас о помощи
Я ищу практику на Симфони без оплаты. Ищу задач и наставника.
Если необходимо - взамен готов оказать помощь по друпал и прочему подобному
Мои обстоятельства я объясню в личных сообщениях
Админов прошу не удалять это сообщение - возможно я его повторю через пару дней
Ilya 🃏
Лучше бы на вопросы ответили)
Vlad
доки нету,код есть) Смотрите сорцы
Ilya 🃏
А то расписали "так делать неправильно, делай иначе", а про "иначе" только пару фраз кинули и ссылку на дескрайбер от нельмио, а можно ли использовать его ДО того как апи создано (чтобы архитектор отдал уже разработчику готовую инструкцию к новому апи) и через что именно оно описывается без нельмио - тишина
Иван
Vlad
Vlad
а на счет описать контракт раньше кода,это в nelmio тоже можно сделать
Ilya 🃏
И допом мне в дескрайбере ничего не нужно расписывать
Ilya 🃏
(правда из названия кажется что ровно наоборот 😅)
Ilya 🃏
Ilya 🃏
Ilya 🃏
Можешь коммент прочитать, там есть вариант
Мне в этом плане интересной показалась https://stoplight.io/open-source/, там и мок сервер можно поднять как раз, тянуть инфу из сгенерированного симфони openapi. Правда вспомнил как я дружил нельмио со всякими опенапи сервисами и обычно это боль, то какие-то обязательные параметры нельмио не генерирует то версия устаревшая то еще что
Nikolay
Nikolay
я использую zircote/swagger
Ilya 🃏
Nikolay
Ilya 🃏
тока nelmio использует zirocote/swagger))
Ну, если визуальная часть, которая очень мягко говоря "не очень" это единственно что дает нельмио, то в цепочке доставки от php до стоплайт он точно излишен
Nikolay
Vlad
ну во втрой нету) это с 3 завезли
Vlad
в 2017 году)
Nikolay
Nikolay
Alexey Mishurovskiy
Всем привет. кто-то ковырялся с https://fuelphp.com/?
Alexey Mishurovskiy
Alexey Mishurovskiy
там просят меня помочь доработать, мне интересно там совсем по горло говнокод или что-то можно порешать.
Konstantin
Konstantin
https://cdn.weblab.pro/yfzky.png
Руслан 🇲🇨
Konstantin
Ivan
Всем привет! Вопрос по дефолтному функционалу авторизации через форму. Задача авторизовывать пользователя через телефон. Человек вводит номер телефона, ему приходит код, он его вводит и вот он уже авторизован. При таком описании в принципе все просто, и реализовывается несложно. Но в том случае, если этот человек для нас новый, т.е. ещё не зарегистрирован, задача спросить у него имя, пароль, email. И уже имея все эти данные, спокойно зарегистрировать и авторизовать.
Руслан 🇲🇨
так, и?
Что "и"?
Konstantin
ёпт 🙂 вы мне шлёте реплай со скриншотом, от меня что надо?
Руслан 🇲🇨
Я выполнил команду "./bin/console debug:router". Она дала такой результат. И как это мне поможет?
Ivan
Вопрос: городить эту логику как-то внутри custom form auth, или в контроллере? Для меня близок вариант реализации в контроллере, однако не пойму что тогда написать в этом форм аудентификаторе, оставить просто self validate passport?
Иван
две разных формы
Иван
причём емейл тоже надо подтверждать
Павел
@sc0rp10 А не оверхедно ли под каждый респонс писать класс, только для того, чтобы доку заполнить?
Konstantin
оверхедно по сравнению с чем?
Павел
Павел
Не, я понмиаю, когда есть сложная ридка, где например можно что-то еще форматнуть
Павел
Павел
Иван
Зачем?
затем, чтобы точно знать на уровне конструктора, что данные из базы соответствуют контракту
на последнем метре оптимизации можно перекрестясь и обзанавшись тестами отказаться от мапинга, но до того надо контроллировать типы
Иван
на минуту if('0') в пыхе и яваскрипте по разному работают
надо кастить в инт или в бул
Павел
Павел
Вот у меня массив [{id,name}] я прекрасно получаю его из бд и сразу вывожу в респонс в виде массива. Зачем мне еще проклака в видео dto?