我有控制器UserController
和动作actionAjax
。我通过Chrome访问以下URL,它正常工作。
index.php?r=user/ajax
现在我定义了新的动作命名为actionAjaxUser
,仍然使用Chrome访问URL index.php?user/ajaxUser
然后404返回。如何获取actionAjaxUser
的内容?
在"action"后面每增加一个大写字母加一个"-",所以
index.php?r=user/ajax-user
如果你有一个类似actionTest1Test2Test3
的动作,url将是controllername/test1-test2-test3
。
请注意,如果你使用访问规则,你也必须使用"url"路径。
return [
'access' => [
'class' => AccessControl::className(),
'rules' => [
[
'actions' => ['test1-test2-test3'],
'allow' => true,
'roles' => ['@'],
],
],
],
];
相同的命名方案是btw。也用于控制器。例如,如果你的控制器命名为Test1Test2Controller
,则视图文件夹名称将为test1-test2
。