cakephp - CakePHP 4 如何将日期字段 created_at 分配给 created
问题描述
我有一张名为 products 的表。在产品表中,我有 2 个字段created_at
和update_at
. 我不想将其更改为created
and modified
。
在不更改表字段名称的情况下,如何分配创建的 created_at 字段以获取 cakephp 时间助手自动更新日期?
我在下面尝试过的实体
protected $_accessible = [
'created_at' => $this->created,
'updated_at' => $this->modified,
];
得到错误。
解决方案
阅读手册。https://book.cakephp.org/4/en/orm/behaviors/timestamp.html#basic-usage
如果您需要修改具有不同名称的字段,或者想要更新自定义事件上的其他时间戳字段,您可以使用一些额外的配置:
class OrdersTable extends Table
{
public function initialize(array $config): void
{
$this->addBehavior('Timestamp', [
'events' => [
'Model.beforeSave' => [
'created_at' => 'new',
'updated_at' => 'always',
],
'Orders.completed' => [
'completed_at' => 'always'
]
]
]);
}
}
推荐阅读
- javascript - 每次检查无线电 btn 时添加到变量?
- azure - 云盘挂载问题
- git - 不再跟踪远程分支
- symfony - Symfony 欢迎页面未在全新安装时加载
- reactjs - React-router v5.2 NavLink active 未按预期工作
- c# - 在 ASP.NET MVC 中调用时未写入 HttpContext 响应
- sql - 正确的查询在用作子查询时会产生语法错误
- java - Maven Shade 插件:添加 ApacheLicenseResourceTransformer 后仍会抛出重叠资源警告
- custom-fields - Shopware 6 具有自定义字段类型的产品
- google-apps-script - 允许匿名访问非常特定的 Google Apps 脚本网络应用程序