Yii2 Большие и маленькие буквы в именах действий контроллеров (actions), ссылках, и правилах доступа (URL access rules)
Primary tabs
Имена действий и ссылки на них
Собственно, есть два правила, устанавливающие связь между контроллерами и ссылки "на них":
- Имя действия контроллера содержит лишь одну большую букву - тогда ссылка должна должна писаться слитно, например для действия:
public function actionRemoveticket()</li> { }
используем ссылку типа:
/site/removeticke
- В имени контроллера есть несколько заглавных букв:
public function actionAddNews(){}
Здесь между словами в ссылке надо добавить дефис:
/site/add-news
Правила доступа
С правилами доступа всё просто:
Необходимо указывать имя действия контроллера в том виде, в котором к нему обращаются через ссылку, то есть для двух примеров, приведённых нами выше правило может выглядеть так:
/** * @inheritdoc */ public function behaviors() { return [ 'access' => [ 'class' => AccessControl::className(), 'rules' => [ [ 'actions' => ['login', 'error'], 'allow' => true, ], [ // Правила для наших двух действий (как в url): 'actions' => [ 'removeticket', 'add-news'], 'allow' => true, 'roles' => ['@'], ], ], ] ]; }
- Log in to post comments
- 4909 reads