Size: a a a

2020 October 10

A

Arky in symfony
jenia
Скажите как можно добится такого вывода при запросе api ?

Интересует поля: message, status
Экспешены и их листенер?)0
источник

ПГ

Павел Г. in symfony
Я еще через Normalizer решал.
источник

D

Dmitry in symfony
jenia
Скажите как можно добится такого вывода при запросе api ?

Интересует поля: message, status
Return new JsonResponse
источник

АЕ

Алексей Елисеенко... in symfony
jenia
Скажите как можно добится такого вывода при запросе api ?

Интересует поля: message, status
Ты спрашиваешь как массив конвертнуть в json строку что ли?)
источник

j

jenia in symfony
Алексей Елисеенко
Ты спрашиваешь как массив конвертнуть в json строку что ли?)
Как сделать что бы был exception и в нем та инфа что на картинке. Поля которые интересны в основном потом в data - status, message
источник

ПГ

Павел Г. in symfony
jenia
Как сделать что бы был exception и в нем та инфа что на картинке. Поля которые интересны в основном потом в data - status, message
Надо сгенерить exception с данными, если надо с дополнительными. Потом перехватить его   и конвертнуть в json нужного формата
источник

ПГ

Павел Г. in symfony
Exception можно сделать кастомный с любым количеством полей, глявное заполнить
источник

ПГ

Павел Г. in symfony
status же можно указывать не как доп поле а как код.
источник

ПГ

Павел Г. in symfony
Хотя там и код и статус...
источник

АЕ

Алексей Елисеенко... in symfony
Ну если у тебя стоит fos то забацать exceptionController(хотя вроде в новых версиях там переделали на что-то другое)

Если нету то делаешь listener который будет хватать твой эксепшн и в нем уже формировать ответ и отдавать респонс
источник

j

jenia in symfony
Павел Г.
Exception можно сделать кастомный с любым количеством полей, глявное заполнить
Спасибо. Понял ребята вектор
источник

ФХ

Филадельфия Хачатуря... in symfony
Andriy Okhrimenko
Из того что ты написал, у тебя 3 сущности: пользователь, исполнитель и заказчик. А у заказа, соответственно, нет пользователя, но есть заказчик и исполнитель.
ну да, я использую апи платфоом и когда делаю getorder мне нужно чтобы у заказчика и исполнителя были разные свойства. А так как и тот и другой это два пользователя, т.е. сущность юзера, то показываются одни и те же.
источник

В

Владимир in symfony
группы сериализатора нельзя как то динамически указывать в зависимости от конкрентного юзера?
источник

В

Владимир in symfony
Через DTO можно вручную выбирать что передавать а что нет для каждого юзера я думаю.
источник

ФХ

Филадельфия Хачатуря... in symfony
Владимир
группы сериализатора нельзя как то динамически указывать в зависимости от конкрентного юзера?
в jms можно указывать какую группу использовать для определённого свойства, а в симфонивском сериализаторе нет походу или я плохо гуглю. и насколько понял в api platform не получится юзать jms
источник

В

Владимир in symfony
как раз на каждое свойство группу то можно вешать, но вот как задать текущую группу при нормализации в зависимости от юзера - я хз.
Мне кажется через DTO попроще будет
источник

ФХ

Филадельфия Хачатуря... in symfony
Владимир
как раз на каждое свойство группу то можно вешать, но вот как задать текущую группу при нормализации в зависимости от юзера - я хз.
Мне кажется через DTO попроще будет
ну я про нормализацию, т.е. в jms ты указываешь для заказчика допустим группу short, а для исполнителя full и все ок.

ну понял, спасибо
источник

В

Владимир in symfony
угу, в апи платформ там по endpointe вроде вешается какая группа
источник

В

Владимир in symfony
Филадельфия Хачатурян
ну я про нормализацию, т.е. в jms ты указываешь для заказчика допустим группу short, а для исполнителя full и все ок.

ну понял, спасибо
а вообще, это нормально когда формат ответ api зависит от того кто запрашивает? ну кроме access denied
источник

ФХ

Филадельфия Хачатуря... in symfony
Владимир
а вообще, это нормально когда формат ответ api зависит от того кто запрашивает? ну кроме access denied
нет, ты не понял.

у заказа есть 2 связи заказчик и исполнитель.

это два разных юзера и когда я получаю заказ от апи, то у этих двух юзеров должны быть  разные свойства
источник