laravel-admin 后臺(tái)表格篩選設(shè)置默認(rèn)的查詢?nèi)掌诜椒?/h1>
更新時(shí)間:2019年10月03日 19:29:05 作者:ncsb
今天小編就為大家分享一篇laravel-admin 后臺(tái)表格篩選設(shè)置默認(rèn)的查詢?nèi)掌诜椒ǎ哂泻芎玫膮⒖純r(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
一、框架版本說(shuō)明
laravel 5.5
laravel-admin 1.7.5
二、表格日期篩選使用
后端調(diào)用代碼
$grid->filter(function(Grid\Filter $filter){
$filter->like('title', '標(biāo)題');
$filter->between('created_at', '發(fā)布日期')->date();
});
日期篩選條件對(duì)應(yīng)的前端界面如下圖:

三、需要設(shè)置默認(rèn)查詢?nèi)掌诘脑?/strong>
對(duì)于大表查詢?nèi)绻麤](méi)有默認(rèn)的條件限制,查詢數(shù)據(jù)庫(kù)會(huì)非常的慢,count(*) 總數(shù)都要好幾秒
為了解決上面的問(wèn)題,所以需要加默認(rèn)的條件限制
這個(gè)問(wèn)題是老大解決的,下面先說(shuō)明處理的方法,再記錄下自己走的彎路
四、處理方法
在方法開(kāi)始出加上代碼:
if(empty(request()->created_at)){
request()->offsetSet('created_at',Helper::lastConditionDate('month'));
}
為什么要這樣寫了,就是給Request對(duì)象設(shè)置請(qǐng)求參數(shù)created_at,就這么簡(jiǎn)單。 下面是一些簡(jiǎn)要的說(shuō)明
時(shí)間查詢條件字段created_at
Helper::lastConditionDate('month') 這個(gè)行代碼得到是一個(gè)時(shí)間起止的數(shù)據(jù):
Array
(
[start] => 2019-07-09
[end] => 2019-08-08
)
設(shè)置這個(gè)數(shù)據(jù),是因?yàn)閘araval-admin的日期查詢條件就是這樣提交到前端的,見(jiàn)下圖:

以上就是問(wèn)題的處理方法。
下面記錄下,自己解決這個(gè)問(wèn)題是怎么誤入歧途的
開(kāi)始時(shí)這樣寫的:

標(biāo)題可以設(shè)置成功,默認(rèn)的日期設(shè)置不了,為什么了?
官方文檔、網(wǎng)上搜索了一堆,還是沒(méi)有找到解決方法。我開(kāi)始懷疑是不是源碼的問(wèn)題了,于是看源碼這塊是不是沒(méi)有設(shè)置了,

看源碼初始化的時(shí)候果然是沒(méi)有設(shè)置。于是自己加了幾行代碼,見(jiàn)上圖紅框處。
刷新頁(yè)面,果然可以看到設(shè)置的默認(rèn)值了,別高興太早,馬上測(cè)試就發(fā)現(xiàn)問(wèn)題。
重新選擇日期查詢,還是顯示的是默認(rèn)日期條件。。。。。。。
這是老大過(guò)來(lái),看了下,很快就解決了,上面已經(jīng)記錄了。
自己出現(xiàn)的問(wèn)題如下:
看標(biāo)題可以設(shè)置默認(rèn)值,就想當(dāng)然的認(rèn)為日期也是在那里設(shè)置的。
其實(shí)標(biāo)題設(shè)置在第一次打開(kāi)列表頁(yè)面,數(shù)據(jù)庫(kù)查詢并沒(méi)有標(biāo)題的查詢條件,只是顯示到了頁(yè)面上。
總結(jié):
laraval-admin設(shè)置默認(rèn)查詢條件,在$grid->filter() 里面設(shè)置是沒(méi)有用的(打開(kāi)列表頁(yè)面不會(huì)用到默認(rèn)的查詢條件)。
設(shè)置默認(rèn)的查詢條件需要先修改Request對(duì)象的請(qǐng)求參數(shù)
可以斷定,laraval-admin 表格類別篩選,后端查詢是參數(shù)是filter里面設(shè)置,參數(shù)值會(huì)取Request對(duì)象中對(duì)應(yīng)的參數(shù)值。前端查詢條件數(shù)據(jù)顯示是根據(jù)URL上面的參數(shù)設(shè)置的。
以上這篇laravel-admin 后臺(tái)表格篩選設(shè)置默認(rèn)的查詢?nèi)掌诜椒ň褪切【幏窒斫o大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
-
php實(shí)現(xiàn)zip壓縮文件解壓縮代碼分享(簡(jiǎn)單易懂)
這篇文章主要介紹了php的zip壓縮文件解壓縮實(shí)現(xiàn)代碼,需要的朋友可以參考下 2014-05-05
-
PHP框架Laravel中實(shí)現(xiàn)supervisor執(zhí)行異步進(jìn)程的方法
這篇文章主要給大家介紹了PHP框架Laravel中實(shí)現(xiàn)supervisor執(zhí)行異步進(jìn)程的方法,文中介紹的非常詳細(xì),相信對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。 2017-06-06
-
laravel中Redis隊(duì)列監(jiān)聽(tīng)中斷的分析
這篇文章主要給大家介紹了關(guān)于laravel中Redis隊(duì)列監(jiān)聽(tīng)中斷的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧 2020-09-09
-
php側(cè)拉菜單 漂亮,可以向右或者向左展開(kāi),支持FF,IE
其中menu UL UL的left或者right控制向右或者向左顯示子菜單 2009-10-10
-
使用PHPStudy在本地快速建立網(wǎng)站并實(shí)現(xiàn)局域網(wǎng)外訪問(wèn)(無(wú)公網(wǎng)IP)
這篇文章主要為大家介紹快速在本地環(huán)境下搭建web網(wǎng)站,同時(shí)實(shí)現(xiàn)可在外網(wǎng)環(huán)境下訪問(wèn)的方法,文中有詳細(xì)的圖文介紹,具有一定的參考價(jià)值,需要的朋友可以參考下 2023-10-10
最新評(píng)論
一、框架版本說(shuō)明
laravel 5.5
laravel-admin 1.7.5
二、表格日期篩選使用
后端調(diào)用代碼
$grid->filter(function(Grid\Filter $filter){ $filter->like('title', '標(biāo)題'); $filter->between('created_at', '發(fā)布日期')->date(); });
日期篩選條件對(duì)應(yīng)的前端界面如下圖:
三、需要設(shè)置默認(rèn)查詢?nèi)掌诘脑?/strong>
對(duì)于大表查詢?nèi)绻麤](méi)有默認(rèn)的條件限制,查詢數(shù)據(jù)庫(kù)會(huì)非常的慢,count(*) 總數(shù)都要好幾秒
為了解決上面的問(wèn)題,所以需要加默認(rèn)的條件限制
這個(gè)問(wèn)題是老大解決的,下面先說(shuō)明處理的方法,再記錄下自己走的彎路
四、處理方法
在方法開(kāi)始出加上代碼:
if(empty(request()->created_at)){ request()->offsetSet('created_at',Helper::lastConditionDate('month')); }
為什么要這樣寫了,就是給Request對(duì)象設(shè)置請(qǐng)求參數(shù)created_at,就這么簡(jiǎn)單。 下面是一些簡(jiǎn)要的說(shuō)明
時(shí)間查詢條件字段created_at
Helper::lastConditionDate('month') 這個(gè)行代碼得到是一個(gè)時(shí)間起止的數(shù)據(jù):
Array ( [start] => 2019-07-09 [end] => 2019-08-08 )
設(shè)置這個(gè)數(shù)據(jù),是因?yàn)閘araval-admin的日期查詢條件就是這樣提交到前端的,見(jiàn)下圖:
以上就是問(wèn)題的處理方法。
下面記錄下,自己解決這個(gè)問(wèn)題是怎么誤入歧途的
開(kāi)始時(shí)這樣寫的:
標(biāo)題可以設(shè)置成功,默認(rèn)的日期設(shè)置不了,為什么了?
官方文檔、網(wǎng)上搜索了一堆,還是沒(méi)有找到解決方法。我開(kāi)始懷疑是不是源碼的問(wèn)題了,于是看源碼這塊是不是沒(méi)有設(shè)置了,
看源碼初始化的時(shí)候果然是沒(méi)有設(shè)置。于是自己加了幾行代碼,見(jiàn)上圖紅框處。
刷新頁(yè)面,果然可以看到設(shè)置的默認(rèn)值了,別高興太早,馬上測(cè)試就發(fā)現(xiàn)問(wèn)題。
重新選擇日期查詢,還是顯示的是默認(rèn)日期條件。。。。。。。
這是老大過(guò)來(lái),看了下,很快就解決了,上面已經(jīng)記錄了。
自己出現(xiàn)的問(wèn)題如下:
看標(biāo)題可以設(shè)置默認(rèn)值,就想當(dāng)然的認(rèn)為日期也是在那里設(shè)置的。
其實(shí)標(biāo)題設(shè)置在第一次打開(kāi)列表頁(yè)面,數(shù)據(jù)庫(kù)查詢并沒(méi)有標(biāo)題的查詢條件,只是顯示到了頁(yè)面上。
總結(jié):
laraval-admin設(shè)置默認(rèn)查詢條件,在$grid->filter() 里面設(shè)置是沒(méi)有用的(打開(kāi)列表頁(yè)面不會(huì)用到默認(rèn)的查詢條件)。
設(shè)置默認(rèn)的查詢條件需要先修改Request對(duì)象的請(qǐng)求參數(shù)
可以斷定,laraval-admin 表格類別篩選,后端查詢是參數(shù)是filter里面設(shè)置,參數(shù)值會(huì)取Request對(duì)象中對(duì)應(yīng)的參數(shù)值。前端查詢條件數(shù)據(jù)顯示是根據(jù)URL上面的參數(shù)設(shè)置的。
以上這篇laravel-admin 后臺(tái)表格篩選設(shè)置默認(rèn)的查詢?nèi)掌诜椒ň褪切【幏窒斫o大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
php實(shí)現(xiàn)zip壓縮文件解壓縮代碼分享(簡(jiǎn)單易懂)
這篇文章主要介紹了php的zip壓縮文件解壓縮實(shí)現(xiàn)代碼,需要的朋友可以參考下2014-05-05PHP框架Laravel中實(shí)現(xiàn)supervisor執(zhí)行異步進(jìn)程的方法
這篇文章主要給大家介紹了PHP框架Laravel中實(shí)現(xiàn)supervisor執(zhí)行異步進(jìn)程的方法,文中介紹的非常詳細(xì),相信對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-06-06laravel中Redis隊(duì)列監(jiān)聽(tīng)中斷的分析
這篇文章主要給大家介紹了關(guān)于laravel中Redis隊(duì)列監(jiān)聽(tīng)中斷的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09php側(cè)拉菜單 漂亮,可以向右或者向左展開(kāi),支持FF,IE
其中menu UL UL的left或者right控制向右或者向左顯示子菜單2009-10-10使用PHPStudy在本地快速建立網(wǎng)站并實(shí)現(xiàn)局域網(wǎng)外訪問(wèn)(無(wú)公網(wǎng)IP)
這篇文章主要為大家介紹快速在本地環(huán)境下搭建web網(wǎng)站,同時(shí)實(shí)現(xiàn)可在外網(wǎng)環(huán)境下訪問(wèn)的方法,文中有詳細(xì)的圖文介紹,具有一定的參考價(jià)值,需要的朋友可以參考下2023-10-10