Alexey Mishurovskiy
Но возник второй вопрос. как с помощью сваггера сделать версионность апи доки?
Alexey Mishurovskiy
только руками походу перебирать и исмотреть на /api/v1, /api/v2 и т.д.
Vlad
Зачем?
Sergei
Какая задача вообще решается?
Aleksandr
что такое рест класс?)
Sergei
Есть ощущение сильной связанности. По идее, экземпляру модели не нужно знать никаких параметров, он должен быть занят своей бизнес-логикой.
А логины-пароли - это конфиг уровня сервисов ну или контроллеров.
Aleksandr
ясно понятно
Daria
покажи класс на pastebin/gist если это твой класс или если не твой, то напиши, чей это вендорный класс (по неймспейсу)
Vlad
Заверни в сервис, инжектишь параметры и авторизируй.
Dmitry
пишешь свой authenticator
в нем авторизуешь юзверя на внешнем сервисе, используя логопас сервиса из настроек
далее во всем проекте используешь уже обычный getUser, поскольку он авторизован
если надо левые данные внести, сделай в юзере проперти и геттер/сеттер для этих данных
artem
Всем привет. Уже мб поднадоел) есть допустим класс юзверь и юзверь детали. И юзверя отдаю через фос рест. Когда проставляю группы то детали как отдельная сущность уходит в вложенный джсон, а хотелось бы чтобы там имейл и статус были в самом юзере. Пока насмотрел только через написание своего нормалайзера. Мб есть что попроще?
Сергей
С фос рест не работал,но думаю там также.. просто напиши геттер в озере,который достанет что надо. И геттер может участвовать в серриалиазици
artem
Сергей
Да
artem
Не то
Maxim Kainov
Maxim Kainov
Maxim Kainov
Чисто простые операции с данными и виртуальные поля делать и все
Dmitry
Denis
Кто то работал с этим бандлом? Можно юзать? https://symfony.com/doc/master/bundles/FOSJsRoutingBundle/usage.html
Сергей
лет 5 назад)
Anonymous
Чёт вроде половина FOS-бандлов едва едва мейнтенится
Maxim Kainov
Denis
вот тоже напрягает то что в описании пишется ".. with the Router component provided in the Symfony2 core."
Какие есть решения в Symfony5 для работы с роутами?
Denis
из js скриптов
Maxim Kainov
Как это работать с роутам в жс?
Denis
доставать роуты по имени в js также как и на бекенде
Maxim Kainov
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. при чем там валидации никакой нет
Dmitry
artem
artem
->add('product', CollectionType::class, [
'entry_type' => Product::class,
'allow_add' => true,
'allow_delete' => true,
'by_reference' => false
])
Maxim Kainov
Anonymous
Зачем формы для рест?
О, меня на собеседовании спрашивали мол а почему вы формы не используете для валидации
Anonymous
Ну и вообще не используете
Maxim Kainov
Maxim Kainov
Anonymous
Что за резолверы?
Имплементируют ArgumentValueResolverInterface и используют Assert для валидации данных
Anonymous
Странная контора )
Ну меня спрашивали очень много теории, а я в рот ебал помнить теорию
Anonymous
Так что да, не сильно обидно
Maxim Kainov
Maxim Kainov
Maxim Kainov
Можно и без дто сразу в сущности сериализовать
Anonymous
Anonymous
Anonymous
(если по правде - можно, но не нужно)
Maxim Kainov
Так для чего тебе дто?
Anonymous
Чтобы данные передавать
Anonymous
Но при этом оно может быть Embeddable, а значит является персистабл обьектом
Anonymous
Это вопрос чисто семантики) я не засовываю дто в энтити)))
artem
Maxim Kainov
Dmitriy
Anonymous
Звучит сложнА) есть пример?
Ух, я б скинул, но не у компа.
Короче, я эту проблему обсудил у нас в стартапе и мы решили семантически разделять DTO от Embeddable DTO. Чтоб блять было чисто
Maxim Kainov
Dmitriy
Та ты ж сам тут в чате хвастался
Anonymous
Maxim Kainov
artem
Maxim Kainov
Anonymous
Почему можно то?
Anonymous
А главное зачем?
Maxim Kainov