如何在Yii2中访问定义的URL

时间:2015-10-21 07:01:53

标签: php yii2

我有控制器UserController和操作actionAjax。我通过Chrome访问以下网址,它正常运行。

index.php?r=user/ajax

现在我定义名为actionAjaxUser的新操作,仍使用Chrome访问网址index.php?user/ajaxUser

然后404返回。 我该怎么做才能获得actionAjaxUser的内容?

1 个答案:

答案 0 :(得分:3)

在" action"之后为每个额外的大写字母添加a" - "所以在你的情况下

index.php?r=user/ajax-user

因此,如果您有actionTest1Test2Test3之类的操作,则网址将为controllername/test1-test2-test3

请注意,如果您使用的是访问规则,则还必须使用" url"路径。

return [
        'access' => [
            'class' => AccessControl::className(),
            'rules' => [
                [
                    'actions' => ['test1-test2-test3'],
                    'allow' => true,
                    'roles' => ['@'],
                ],
            ],
        ],
    ];

同样的命名方案是btw。也用于控制器。例如。如果您的Controller名为Test1Test2Controller,则视图文件夹名称将为test1-test2

希望这能为您澄清这一点。