Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Laravel5也使用资源路由将表单提交到索引_Php_Laravel_Routing_Resources - Fatal编程技术网

Php Laravel5也使用资源路由将表单提交到索引

Php Laravel5也使用资源路由将表单提交到索引,php,laravel,routing,resources,Php,Laravel,Routing,Resources,编辑: 我正在努力完成一些简单的事情。在“我的约会.索引”视图中,我有一个表单。提交表单后,我希望使用查询中的值,如下所示: 任命控制人: public function index(Request $request) { $statusId = $request->status; $labelId = $request->label; $monthId = $request->month; $appointments = Appointmen

编辑:

我正在努力完成一些简单的事情。在“我的约会.索引”视图中,我有一个表单。提交表单后,我希望使用查询中的值,如下所示:

任命控制人:

public function index(Request $request)
{
    $statusId = $request->status;
    $labelId = $request->label;
    $monthId = $request->month;

    $appointments = Appointment::status($statusId)->label($labelId)->month($monthId)->get();

    return view('appointments', compact('appointments'));
}
我的模型中的一种方法(它们都相似):

如果不是针对以下解决方案,那么最好的方法是什么

作品:

我得到以下错误:

方法App\Http\Controllers\AppointsController::store()不存在

我知道这是因为我的路线:

Route::get('appointments', array('as' => 'appointments', 'uses' => 'AppointmentsController@index'));
Route::post('appointments', array('uses' => 'AppointmentsController@index'));
Route::resource('appointments', 'AppointmentsController');
如果我像这样更改邮政路线,它会起作用:

Route::post('appointments/anythinghere', array('uses' => 'AppointmentsController@index'));

问题是,为什么会这样(因为资源路由,我理解,但为什么会这样),我如何才能“修复”它,这样我仍然可以像上面那样使用我的路由?

资源路由在控制器中创建存储操作。您可以指定追索权的一个子集

在你的情况下试试看

Route::resource('appointments', 'AppointmentsController',
                ['except' => ['store']]);

谢谢,这确实应该有效,但我正在使用store方法创建新约会。我想也许我应该找到另一种方法来完成我想做的事情。我将更新OP:)是的,你应该找到另一种方法。您可以在这里看到资源控制器是如何工作的
Route::resource('appointments', 'AppointmentsController',
                ['except' => ['store']]);