1
我想完成一些簡單的事情。在我的約會。索引視圖我有一個表單。一旦提交表單時,我想我的查詢中使用的值,就像這樣:
AppointmentsController:
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'));
}
一個在我的模型方法(它們都是相似的):
public function scopeStatus($query, $statusId)
{
if($statusId)
{
return $query->where('status_id', '=', $statusId);
}
else {
return false;
}
}
如果不是以下解決方案,最佳做法是什麼?
OP:
我收到以下錯誤:
方法應用\ HTTP \控制器\ AppointmentsController ::店()不存在
我知道那是因爲我的路線:
Route::get('appointments', array('as' => 'appointments', 'uses' => '[email protected]'));
Route::post('appointments', array('uses' => '[email protected]'));
Route::resource('appointments', 'AppointmentsController');
如果我改變,像這樣的佈線後,它的工作原理:
Route::post('appointments/anythinghere', array('uses' => '[email protected]'));
問題是,爲什麼是這樣的(因爲資源路線的,我理解,但爲什麼),以及如何我可以去「修復」,所以我仍然可以使用我的路線像上面?
謝謝,這的確應該工作,但我使用創建一個新的約會的存儲方法。我想也許我應該找到另一種方法來完成我想要做的事情。我會更新OP,但:) :) – Hardist
是的,你應該找到另一種方式。你可以在這裏看到https://laravel.com/docs/5.1/controllers#restful-resource-controllers資源控制器的工作原理 –