第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

filter() 集合在子查詢中不起作用

filter() 集合在子查詢中不起作用

PHP
瀟瀟雨雨 2022-07-29 09:34:25
我正在嘗試獲取具有地址的用戶,并且該地址的創(chuàng)建時間不應(yīng)超過 7 天:$users = User::whereHas('address', function($q) {        $q->where(function ($query) {             $query->get()->filter(function ($address) {                 return Carbon::now() < Carbon::parse($address->getOriginal('created_at'))->addDays(7);             });         });     });作品正確,filter()但我無法返回其結(jié)果,我的結(jié)果是所有有地址的用戶。
查看完整描述

3 回答

?
繁花如伊

TA貢獻2012條經(jīng)驗 獲得超12個贊

你可以whereDate這樣使用:


$users = User::whereHas('address', function ($q) {

    $q->whereDate('created_at', '>', Carbon::now()->subDays(7));

})->get();


查看完整回答
反對 回復(fù) 2022-07-29
?
撒科打諢

TA貢獻1934條經(jīng)驗 獲得超2個贊

你可以試試這樣

$user = User::where('address',date('Y-m-d', strtotime('-7 days')))->where('created_at',date('Y-m-d', strtotime('-7 days')))->get();



查看完整回答
反對 回復(fù) 2022-07-29
?
HUX布斯

TA貢獻1876條經(jīng)驗 獲得超6個贊

使用注釋更改您的代碼


$users = User::whereHas('address', function ($q): void {

    $q->where(function ($query): void {

        /**

         * Subqueries use Eloquent Builder class here to add some wrapped filters 

         * But your code takes all addresses, filter them for nothing

         * You should add SQL filters to builder something like that:

         **/

        $query->whereDate(Carbon::now()->subDays(7), '<', 'created_at');

    })

    /** To get users by your filters */

    ->get();


查看完整回答
反對 回復(fù) 2022-07-29
  • 3 回答
  • 0 關(guān)注
  • 148 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號