日付ピッカーと選択フィールドで検索クエリを作成したい。以下のビューファイルからコントローラーにリクエスト値を取得するにはどうすればよいですか?コードのどこを変更できますか?ありがとう。
index.blade.php
<div class="form-group col-sm-6">
{!! Form::open(array('class' => 'form', 'method' => 'get', 'url' => url('/pdfs/job_finished_search'))) !!}
{!! Form::input('text', 'datepicker_from', null, ['placeholder' => 'Fra', 'id' => 'datepicker_from']) !!}
{!! Form::input('text', 'datepicker_to', null, ['placeholder' => 'Til', 'id' => 'datepicker_to']) !!}
{!! Form::select('customer_name', $jobs->pluck('customer_name', 'customer_name')->all(), null, ['class' => 'form-control']) !!}
{!! Form::submit('Søke', ['class' => 'btn btn-success btn-sm']) !!}
{!! Form::close() !!}
</div>
Controller.php
public function job_finished_search(Request $request, Job $jobs)
{
$jobs = Job::onlyTrashed()
->whereBetween('created_at', array(
(Carbon::parse($request->input('datepicker_from'))->startOfDay()),
(Carbon::parse($request->input('datepicker_to'))->endOfDay())))
->where('customer_name', 'like', '%'.$request->customer_name.'%')
->orderBy('deleted_at', 'desc')
->paginate(15);
if (empty($jobs)){
Flash::error('Search result not found');
}
return view('pdfs.index', ['jobs' => $jobs]);
}
リクエストデータを取得する方法は複数あります。たとえば、datepicker_from値を取得するには、以下のいずれかを使用できます。
$request->datepicker_from
$request->input('datepicker_from')
$request->get('datepicker_from')
あなたが最も好きなものを選択してください
https://laravel.com/docs/5.5/requests を参照してください
リクエスト値を取得するには、get
メソッドを使用できます。
$customer = $request->get('customer_name','default_value');
リクエスト値を取得するには、$input= $request->all()
のようなオブジェクトを設定できます。次に、配列であるオブジェクトを使用して特定のフィールドを取得できます。たとえば、日付ピッカーにアクセスするには、_$input['datepicker_from']
_と記述できます。コードで_$jobs
_オブジェクトを宣言する前に、$input= $request->all()
を配置する必要があります。