"Casting" 功能 ($casts) 是否仅在 Laravel 中使用 Eloquent 有效
Is the "Casting" feature ($casts) valid only using Eloquent in Laravel
我尝试使用 $casts 更改模型中的日期格式:
protected $casts = [
'created_at' => 'datetime:Y-m-d H:i',
'updated_at' => 'datetime:Y-m-d H:i'
];
当我使用 Eloquent 检索数据时它有效:
$clients = Client::all();
return $clients;
但它不适用于查询生成器!
$clients = DB::table('clients')->get();
return $clients;
在查询生成器中,您正在使用 DB::table 它不使用 Laravel 模型,并且您正在将此强制转换代码写入您的 Laravel 模型。它显然永远行不通。它们是苹果和橘子。
如果您使用转换代码,Laravel 仅在您获取模型并使用此字段时运行此代码。在此之前 它不会更改值。
你想在那里实现什么目标?如果你给我们更详细的代码我会帮助你。
我尝试使用 $casts 更改模型中的日期格式:
protected $casts = [
'created_at' => 'datetime:Y-m-d H:i',
'updated_at' => 'datetime:Y-m-d H:i'
];
当我使用 Eloquent 检索数据时它有效:
$clients = Client::all();
return $clients;
但它不适用于查询生成器!
$clients = DB::table('clients')->get();
return $clients;
在查询生成器中,您正在使用 DB::table 它不使用 Laravel 模型,并且您正在将此强制转换代码写入您的 Laravel 模型。它显然永远行不通。它们是苹果和橘子。
如果您使用转换代码,Laravel 仅在您获取模型并使用此字段时运行此代码。在此之前 它不会更改值。
你想在那里实现什么目标?如果你给我们更详细的代码我会帮助你。