Для чего нужен раздел требований в маршруте SocialEngine? - PullRequest
0 голосов
/ 01 октября 2018

Я обычно создаю маршруты в manifest.php для своих модулей следующим образом:

'pay_general' => [
    'route' => 'pgateway/:controller/:action/*',
    'defaults' => [
        'module' => 'pgateway',
        'controller' => 'pay',
        'action' => 'index',
    ],
    'reqs' => [
        'controller' => '\D+',
        'action' => '\D+',
    ],
],

Это кажется простым.Однако у меня есть несколько вопросов по этому поводу.Во-первых, для чего нужен раздел reqs?Во-вторых, что означает \D+ в разделе reqs?
Помимо этого, я также вижу различные маршруты в модулях SocialEngine, например, маршруты, в которых формат module/:action используется следующим образом:

'music_general' => array(
  'route' => 'music/:action/*',
  'defaults' => array(
    'module' => 'music',
    'controller' => 'index',
    'action' => 'browse',
  ),
  'reqs' => array(
    'action' => '(index|browse|manage|create)',
  ),
),    

Здесь вы видите, что форма маршрута отличается.Просто module/action!Хорошо!но что значит "action"=>"(index|browse|manage|create)"?Принимает ли этот маршрут несколько действий, т. Е. Индексировать, просматривать, управлять, создавать, но по умолчанию используется просмотр?

Значит ли это, что все действия будут следовать одной и той же структуре маршрута?

Я ищу исчерпывающий ответ, который подробно описывает, как работают маршруты SocialEngine.

...