我设置了单击按钮时调用的ajax函数。
当我设置以下网址管理员规则
时,没有规则规则时,它会起作用'posts' => 'posts/index',
'posts/index' => 'posts/index',
'posts/view/<id:\d+>' => 'posts/view',
'posts/<slug>' => 'posts/slug',
我收到以下错误
POST http://localhost:8888/posts/liked?id=56 500 (Internal Server Error)
答案 0 :(得分:0)
没有足够的信息,所以我假设您的UrlManager配置是这样的。
'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName'=>false,
'rules' => [
'posts' => 'posts/index',
'posts/index' => 'posts/index',
'posts/view/<id:\d+>' => 'posts/view',
'posts/<slug>' => 'posts/slug',
...
posts
为PostsController
且slug
为actionSlug()
。
如果您的ajax请求代码如下所示,它将起作用。
jQuery.ajax({
url: '/posts/liked?id=56',
type: 'POST',
...
我已使用PostsController
中的操作函数对此进行了测试。
public function actionSlug() {
$id = Yii::$app->request->get('id');
echo json_encode($id);
}