2015-12-07 2 views

ответ

3

Это просто конвенции (а также в других структурах, такие, как ZF), чтобы добавить суффикс «Действие» на имя этих методов в контроллерах, которые непосредственно подвергаются через маршруты, чтобы сделать такие действия лучше различимы от других методов.

Технически «действие» вообще не имеет значения, т. Е. Метод не ведет себя иначе, потому что существует этот суффикс. Кроме того, можно определить метод действий, как это:

/** 
* @Route("/", name="homepage") 
* 
* @return \Symfony\Component\HttpFoundation\Response 
*/ 
public function index() 
{ 
    // ... 
} 

Symfony не заставит вас использовать этот суффикс, но я бы сильно рекомендую после этой конвенции.

+0

На самом деле, с выпуском Symfony 3.0 рекомендуется отказаться от суффикса Action. Я не уверен, но я думаю, что в более ранних версиях symfony при написании действия в маршрутизации вы должны были написать 'index', и он будет искать функцию' indexAction'. – anegrea

+0

Что является источником этой информации? Я не могу вспомнить, что прочитал что-нибудь об этом, и в документации по 3.0 все сказано: «Каждое действие в классе контроллера помечено Action и указано в конфигурации маршрутизации именем (индексом)« – BlueM

+1

. Вы были очень правы, чтобы задать вопрос мои источники, я решил дважды проверить свои источники, и я имел в виду этот слайд http://www.slideshare.net/javier.eguiluz/new-symfony-tips-tricks-symfonycon-paris-2015/49 из презентации Хавьера Эгуилуза , которого я отправил по электронной почте, чтобы узнать, что он имел в виду. Его вывод заключается в том, что вы можете удалить суффикс действия, если используете аннотации или контроллеры в качестве служб, и вы хотите сделать действия короче. Однако он не рекомендует его. И о втором, что я хотел сообщить: суффикс действия требуется, если вы используете объявление yaml маршрутов (поэтому оно имеет некоторое значение) – anegrea

0

Что вы использовали в случае представления верблюд имени функции

sampleAction это имя функции.

нет такой вещи, который будет отличаться. sample или Action.

1

Не путайте с помощью именования: класс контроллера - это просто удобный способ группировать несколько контроллеров/действий вместе. Как правило, класс контроллера будет содержать несколько контроллеров/действий (например, updateAction, deleteAction и т. Д.).

Refer

Смежные вопросы