diff --git a/system/DataCaster/DataCaster.php b/system/DataCaster/DataCaster.php index 854a0b50b32c..29de3987faa9 100644 --- a/system/DataCaster/DataCaster.php +++ b/system/DataCaster/DataCaster.php @@ -159,7 +159,7 @@ public function castAs(mixed $value, string $field, string $method = 'get'): mix $params = array_map('trim', explode(',', $matches[2])); } - if ($isNullable) { + if ($isNullable && ! $this->strict) { $params[] = 'nullable'; } diff --git a/tests/_support/Models/UserCastsTimestampModel.php b/tests/_support/Models/UserCastsTimestampModel.php index c19353f01319..30f6b3e6b6f7 100644 --- a/tests/_support/Models/UserCastsTimestampModel.php +++ b/tests/_support/Models/UserCastsTimestampModel.php @@ -28,8 +28,8 @@ class UserCastsTimestampModel extends Model 'id' => 'int', 'name' => 'base64', 'email' => 'json-array', - 'created_at' => 'datetime', - 'updated_at' => 'datetime', + 'created_at' => '?datetime', + 'updated_at' => '?datetime', ]; protected array $castHandlers = [ 'base64' => CastBase64::class,