File tree 2 files changed +12
-1
lines changed
tests/Fixtures/app/Models
2 files changed +12
-1
lines changed Original file line number Diff line number Diff line change 4
4
5
5
use Carbon \Carbon ;
6
6
use Illuminate \Database \Eloquent \Builder ;
7
+ use Illuminate \Database \Eloquent \Model ;
7
8
use Illuminate \Database \Eloquent \Relations \BelongsToMany ;
8
9
use Illuminate \Database \Eloquent \Relations \MorphTo ;
9
10
use Illuminate \Database \Eloquent \Relations \Relation ;
@@ -194,8 +195,17 @@ protected function buildFilterNestedQueryWhereClause(
194
195
$ query ,
195
196
bool $ or = false
196
197
) {
198
+ /** @var Model $resourceModel */
199
+ $ resourceModel = (new $ this ->resourceModelClass );
200
+
201
+ $ dateCasts = collect ($ resourceModel ->getCasts ())->filter (function (string $ type ) {
202
+ return in_array ($ type , ['date ' , 'datetime ' ]);
203
+ })->keys ()->toArray ();
204
+
205
+ $ dateFields = array_merge ($ resourceModel ->getDates (), $ dateCasts );
206
+
197
207
$ treatAsDateField = $ filterDescriptor ['value ' ] !== null &&
198
- in_array ($ filterDescriptor ['field ' ], ( new $ this -> resourceModelClass )-> getDates () , true );
208
+ in_array ($ filterDescriptor ['field ' ], $ dateFields , true );
199
209
200
210
if ($ treatAsDateField && Carbon::parse ($ filterDescriptor ['value ' ])->toTimeString () === '00:00:00 ' ) {
201
211
$ constraint = 'whereDate ' ;
Original file line number Diff line number Diff line change @@ -31,6 +31,7 @@ class Post extends Model
31
31
'meta ' => 'array ' ,
32
32
'options ' => 'array ' ,
33
33
'stars ' => 'float ' ,
34
+ 'publish_at ' => 'datetime ' ,
34
35
];
35
36
36
37
/**
You can’t perform that action at this time.
0 commit comments