Jquery Ajax发送到控制器操作

Jquery Ajax发送到控制器操作,jquery,ajax,laravel,laravel-4,Jquery,Ajax,Laravel,Laravel 4,如何在Laravel 4中调用控制器内的操作?!我这样试过: $.post('/tutorials/rate', {id:tutID, rating : rating}); 在我的控制器中,我有: public function rate() { return whatever; } 在my routes.php中: Route::get('/tutorials/rate', array('uses' => 'TutorialController@rate')); 但它不起作用 更

如何在Laravel 4中调用控制器内的操作?!我这样试过:

$.post('/tutorials/rate', {id:tutID, rating : rating});
在我的控制器中,我有:

public function rate()  {
return whatever;
}
在my routes.php中:

Route::get('/tutorials/rate', array('uses' => 'TutorialController@rate'));
但它不起作用

更新:自行修复…将控制器功能更改为:

public function post_rate() {
return whatever;
}

您通过Jquery发布,但随后在Laravel中使用Route::get方法

应该是Route::post()

路线

控制器教程

public function postRate(){}
您使用
$.post()
,这意味着您正在使用post请求发送数据。
您没有捕获此方法/url组合

修改你的
routes.php
,你就可以开始了

Route::post('tutorials/rate', 'Tutorials@rate');

<?php

class Tutorials extends BaseController
{
    public function rate()
    {
        return 'rating';
    }
}
Route::post('tutorials/rate','Tutorials@rate');

嗯,给我一个500内部服务器错误!我在函数名上犯了错误。已修复,将
公共函数路由()重命名为
公共函数速率()
。现在可以工作了吗?不,我在你修复它之前看到的那个错误…仍然不能工作:(双重检查(甚至单元测试)-工作起来很有魅力。试着运行
composer dump autoload-o
命令来重新加载类映射你也可以使用一个控制器,然后在控制器中执行Route::controller('tutorials');然后执行公共函数postRate()。
Route::post('tutorials/rate', 'Tutorials@rate');

<?php

class Tutorials extends BaseController
{
    public function rate()
    {
        return 'rating';
    }
}