FOSRestController - Как использовать верблюжий случай в качестве стратегии именования для конкретного представления / ответа контроллера? - PullRequest
0 голосов
/ 13 февраля 2019

Я работаю с Symfony 3.4, FOSRestBundle 2.5.0, JMSSerializer 2.1.0 и JMSSerializerBundle 3.1.0.

Стратегия именования по умолчанию для создания ответа JSON, похоже, использует подчеркивание:

class MyController extends AbstractFOSRestController {

  public function someAction(Request $request) {
     $data = $someThirdPartyService->getThirdPartyObject();         
     $data->setSomeProperty('value');

     $view = $this->view($data, 200);
     $return $this->handleView($view);
  }

  // JSON
  {
      'some_property' : 'value    <== lowercase underscore naming
  }

}

Это работаетхорошо во всем моем проекте.Однако при общении со сторонними веб-сервисами мне нужно использовать CamelCase.Поскольку объект данных ответа создается сторонней библиотекой, я не могу изменить его источник (например, добавить @JMS\SerializedName к свойствам).

Я знаю, что могу изменить стратегию именования в файле parameters.yml, ноэто повлияет и изменит стратегию в полном проекте?

Можно ли как-то указать стратегию для конкретного контроллера, действия или представления?

...