【发布时间】:2021-12-20 16:01:46
【问题描述】:
我想将日期范围过滤器应用于我的特定页面。只有一个日期范围选择器允许您从日历中选择一个范围,并显示在一个变量中。我正在获取该变量中的数据,但我不知道通过将单个变量值拆分为两个值(从和到)来过滤我的数据库数据的确切方法。
这是我的输入框--
<input type="text" class="form-control" name="daterange" value="01/01/2021 - 01/15/2021" />
下面是我的日期范围的具体脚本 -
$(function() {
$('input[name="daterange"]').daterangepicker({
"startDate": "11/01/2021",
"endDate": "11/07/2021",
opens: 'left'
}, function(start, end, label) {
console.log('New date range selected: ' + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD') + ' (predefined range: ' + label + ')');
axios.get('/fetchdata')
.then(response => {
data = this.form;
})
});
});
这是我的 web.php
Route::get('fetchdata', 'AccessoryController@fetch_data')->name('accessory.date.filter');
这是我需要帮助的控制器代码,目前日期范围选择器正在工作。它在控制台中给了我正确的选择。 "选择的新日期范围:2021-11-04 到 2021-11-10(预定义范围:未定义)"
而且我的路线也在使用 return 'test' 但我不知道如何在后端获取数据。
public function fetch_data(Request $request)
{
//return 'test';
return $request->all(); // This returns nothing
$user = Auth::user();
$storesID = $user->storesID->pluck('id');
$stores = $user->stores;
return $request->daterange;
$accessory = AccessoryRequest::where('request_date', ">=", $request->startDate)->where('date', "<=", $request->endDate)->get(); //how can i filter
return $accessory;
return view('accessorydetails.index')
->with('stores', $stores)
->with('accessories', $accessories);
}
【问题讨论】:
标签: laravel vue.js daterangepicker