Laravel RESTful路由有两个变量

时间:2015-03-24 16:08:30

标签: php laravel laravel-4 routes

我正在尝试使用两个变量创建一个RESTful路由:

Route::post('trips/{trip_id}/{user_id}', [
    'as'   => 'trips.apply',
    'uses' => 'TripsController@applyForTrip'
]);

控制器:

public function applyForTrip($trip_id, $user_id)
{
    dd('I am here! Hooray!');
}
在视图中触发

{{ HTML::linkRoute('trips.apply', 'Get on the ride!', [$trip->id, Auth::user()->id], ['class' => 'btn btn-lg btn-success']) }}

所以,当我启动路线时,我得到MethodNotAllowedHttpException。所以我想知道,也许我没有正确地宣布这条路线,或者说其他方面,但对我来说似乎一切都好。有什么建议吗?

1 个答案:

答案 0 :(得分:1)

当您单击锚链接时,浏览器将向href属性中引用的URL发送GET请求。您已将路由定义为Laravel中的POST路由,并且由于Laravel无法找到与请求的URL匹配的GET路由,因此您将获得可怕的方法不允许异常。