实体保存到数据库错误的日期格式 codeigniter 4
Entity saving to database wrong date format codeigniter 4
我的实体如下所示:
class Request extends Entity
{
protected $casts = [
'id' => 'integer',
'added_at' => 'datetime',
'deadline' => 'datetime',
'completed' => 'integer'
];
}
保存时,模型会为 sql 查询生成 'Y/m/d' 格式的日期字段,但是我的数据库无法解析它。如何在调用 $myModel->insert($myEntity)
时强制它以 'Y-m-d' 格式生成日期?
实体有二传手选项。每当您执行保存实体时,它都会根据您的情况执行验证或转换。假设您想更改 deadline
的形式,在这种情况下,您必须为 deadline
设置 Setter,如下所示:
public function setDeadline(string $dateString)
{
$this->attributes['deadline'] = $dateString;
return $this;
}
在下一行中:$this->attributes['deadline'] = $dateString;
您将使用像 Carbon 这样的库来格式化 $dateString
,然后重新分配您的变量截止日期。参考 link :
https://codeigniter4.github.io/userguide/models/entities.html
我的实体如下所示:
class Request extends Entity
{
protected $casts = [
'id' => 'integer',
'added_at' => 'datetime',
'deadline' => 'datetime',
'completed' => 'integer'
];
}
保存时,模型会为 sql 查询生成 'Y/m/d' 格式的日期字段,但是我的数据库无法解析它。如何在调用 $myModel->insert($myEntity)
时强制它以 'Y-m-d' 格式生成日期?
实体有二传手选项。每当您执行保存实体时,它都会根据您的情况执行验证或转换。假设您想更改 deadline
的形式,在这种情况下,您必须为 deadline
设置 Setter,如下所示:
public function setDeadline(string $dateString)
{
$this->attributes['deadline'] = $dateString;
return $this;
}
在下一行中:$this->attributes['deadline'] = $dateString;
您将使用像 Carbon 这样的库来格式化 $dateString
,然后重新分配您的变量截止日期。参考 link :
https://codeigniter4.github.io/userguide/models/entities.html