Yii2注销链接问题

foo*_*dev 4 yii2 yii2-advanced-app

我将此功能用于注销链接,而不是在菜单上使用它。

我使用的这段代码:

<?= Html::a('Logout', ['site/logout'], ['data-method' => 'post']) ?>
Run Code Online (Sandbox Code Playgroud)

显示-

不允许的方法。该网址只能处理以下请求方法:POST。

我该如何解决这个问题?

rob*_*sch 5

我认为应该是:

<?= Html::a('Logout', ['site/logout'], ['data' => ['method' => 'post']]) ?>
Run Code Online (Sandbox Code Playgroud)

参见方法文档参数详细信息

您还必须确保已加载YiiAsset。这是神奇的JS代码(链接通常会产生GET请求)。默认情况下,当使用Yii项目模板生成初始代码时,它会包含在AppAsset中,而AppAsset又会在布局文件(AppAsset::register($this);)中实例化。