Alexey Mishurovskiy
Но возник второй вопрос. как с помощью сваггера сделать версионность апи доки?
Alexey Mishurovskiy
только руками походу перебирать и исмотреть на /api/v1, /api/v2 и т.д.
Vlad
Зачем?
Sergei
Какая задача вообще решается?
Aleksandr
что такое рест класс?)
Sergei
Есть ощущение сильной связанности. По идее, экземпляру модели не нужно знать никаких параметров, он должен быть занят своей бизнес-логикой. А логины-пароли - это конфиг уровня сервисов ну или контроллеров.
Aleksandr
ясно понятно
Daria
покажи класс на pastebin/gist если это твой класс или если не твой, то напиши, чей это вендорный класс (по неймспейсу)
Vlad
Заверни в сервис, инжектишь параметры и авторизируй.
Dmitry
пишешь свой authenticator в нем авторизуешь юзверя на внешнем сервисе, используя логопас сервиса из настроек далее во всем проекте используешь уже обычный getUser, поскольку он авторизован если надо левые данные внести, сделай в юзере проперти и геттер/сеттер для этих данных
artem
Всем привет. Уже мб поднадоел) есть допустим класс юзверь и юзверь детали. И юзверя отдаю через фос рест. Когда проставляю группы то детали как отдельная сущность уходит в вложенный джсон, а хотелось бы чтобы там имейл и статус были в самом юзере. Пока насмотрел только через написание своего нормалайзера. Мб есть что попроще?
Сергей
С фос рест не работал,но думаю там также.. просто напиши геттер в озере,который достанет что надо. И геттер может участвовать в серриалиазици
Сергей
Да
artem
Не то
Maxim Kainov
Это больше на виртуал проперти смахивает
Если не подходит виртуальное, то делай реальное
Maxim Kainov
Чисто простые операции с данными и виртуальные поля делать и все
artem
Зачем два класса юзера?
Написал же что для примера)
Dmitry
Denis
Кто то работал с этим бандлом? Можно юзать? https://symfony.com/doc/master/bundles/FOSJsRoutingBundle/usage.html
Сергей
лет 5 назад)
Anonymous
Чёт вроде половина FOS-бандлов едва едва мейнтенится
Denis
вот тоже напрягает то что в описании пишется ".. with the Router component provided in the Symfony2 core." Какие есть решения в Symfony5 для работы с роутами?
Denis
из js скриптов
Maxim Kainov
Как это работать с роутам в жс?
Denis
доставать роуты по имени в js также как и на бекенде
Maxim Kainov
А просто в жс не получится, да и зачем оно
Alexander
Хорошая шутка и нужная, но у меня завести ее так и не получилось было, давно пробовал правда.
Сергей
да, на худой конец можно сделать в лейауте app.urls = { 'user.list': "{{path()}}" } типа того) если боишься, что будут роуты меняться
Сергей
а меня эта штука парила... делаешь дамп, потом дамп инжектишь в бандл js и тд
Сергей
оно того не стоит))
Сергей
просто API не надо ломать
Denis
Спасибо
Юра
Просто с симфони 2 наверное в роутах ничего и не менялось особо
Юра
Иногда софт просто работает хоть последний комит и три года назад
Сергей
ну не, надо смотреть че в зависимостях иначе просто не поставишь)
artem
https://symfony.com/doc/current/form/form_collections.html не могу уже вбить работает ли это с rest? главную форму нормально и валидирует, и заполняет сущность. а вот вложенную просто invalid value. при чем там валидации никакой нет
artem
https://symfony.com/doc/current/form/form_collections.html не могу уже вбить работает ли это с rest? главную форму нормально и валидирует, и заполняет сущность. а вот вложенную просто invalid value. при чем там валидации никакой нет
все вымешленное). https://jsoneditoronline.org/#left=local.wotuqu&right=cloud.2bfd7ae8804b4de393d6ada52858b20b категорию создает, а на продукт ругается This value is not valid. messageParameters: {{ value }} = 3
artem
->add('product', CollectionType::class, [ 'entry_type' => Product::class, 'allow_add' => true, 'allow_delete' => true, 'by_reference' => false ])
Anonymous
Зачем формы для рест?
О, меня на собеседовании спрашивали мол а почему вы формы не используете для валидации
Anonymous
Ну и вообще не используете
Anonymous
О, меня на собеседовании спрашивали мол а почему вы формы не используете для валидации
А собсна зачем, если у меня свои резолверы для каждого DTO которое из реквестов заполняется
Anonymous
Что за резолверы?
Имплементируют ArgumentValueResolverInterface и используют Assert для валидации данных
Anonymous
Странная контора )
Ну меня спрашивали очень много теории, а я в рот ебал помнить теорию
Anonymous
Так что да, не сильно обидно
Anonymous
Хороший вариант
Ну лучше б формы наверное...
Maxim Kainov
Можно и без дто сразу в сущности сериализовать
Anonymous
Почему?
Это сарказм)
Anonymous
(если по правде - можно, но не нужно)
Maxim Kainov
Так для чего тебе дто?
Anonymous
Чтобы данные передавать
Maxim Kainov
Чтобы данные передавать
Почему сразу в ентити их не передать?
Anonymous
Но при этом оно может быть Embeddable, а значит является персистабл обьектом
Anonymous
Это вопрос чисто семантики) я не засовываю дто в энтити)))
Anonymous
Звучит сложнА) есть пример?
Ух, я б скинул, но не у компа. Короче, я эту проблему обсудил у нас в стартапе и мы решили семантически разделять DTO от Embeddable DTO. Чтоб блять было чисто
artem
Ты ж синьер и контрибутор симфы
Когда меня до контрибутора повысили?
Dmitriy
Та ты ж сам тут в чате хвастался
Anonymous
В каком смысле чисто. Вы мапите реквест на дто, а дто на ентити. Зачем здесь дто вопрос
Смотри. Раньше было у нас так. В проекте DTO называли как трансферные объекты, таак и объекты Embeddable с набором свойств. Из первых наполняется энтити, из вторых она может состоять. Но ведь нельзя же так их мешать в одну кучу и называть одним словом
Anonymous
Почему можно то?
Anonymous
А главное зачем?
Maxim Kainov
Почему можно то?
А что, нельзя?