- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 Symfony 2.8 应用程序,它使用 Gedmo\Timestampable
注释进行自动 created_at
和 updated_at
操作,但它似乎首次创建实体/行时,将相同的时间戳放入 updated_at
列中。 UPDATE
确实会导致 updated_at
列显示较新的时间戳,但我希望它一开始就为空白。
我的理解是,在 INSERT
上,只有 created_at
列应填充时间戳,而 updated_at
应保留空白,因为它尚未更新。只有在该列第一次更新后才能获取更新时间的值。
我的预期正确吗?我的代码/配置有问题吗?或者这个注释实际上是按设计设置了两列的值吗?
我的config.yml
:
...
stof_doctrine_extensions:
default_locale: "%locale%"
translation_fallback: true
orm:
default:
translatable: true
timestampable: true
...
我的实体:
...
/**
* An automatic timestamp of the creation.
*
* @var \DateTime $createdAt
* @Gedmo\Timestampable(on="create")
* @ORM\Column(name="created_at", type="datetime")
*/
public $createdAt;
/**
* An automatic timestamp of the updation.
*
* @var \DateTime $updatedAt
* @Gedmo\Timestampable(on="update")
* @ORM\Column(name="updated_at", type="datetime")
*/
protected $updatedAt;
...
该表将两列定义为 DATETIME
并且它们没有默认子句。
最佳答案
这是通过设计完成的,如果我们打开文件“vendor/gedmo/doctrine-extensions/lib/Gedmo/Timestampable/Timestampable.php”,第 22 行(在我的 Gedmo 版本上),我们可以看到:
/**
* @gedmo:Timestampable(on="update")
* dates which should be updated on update and insert
*/
毕竟,插入也有点像表/记录的更新。如果您需要知道该对象是否是新创建的,您仍然可以在“createdAt”中存储的日期和“updatedAt”中存储的日期之间执行检查。
关于php - 如何让 Gedmo\Timestampable 在首次创建时保持 update_at null ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39638895/
在我的应用程序中,我使用 Sequelize。现在我想使用自 EPOCH 以来的毫秒数作为 update_at 列,这样它看起来像: ------------- updated_at --------
我有一个 Symfony 2.8 应用程序,它使用 Gedmo\Timestampable 注释进行自动 created_at 和 updated_at 操作,但它似乎首次创建实体/行时,将相同的时间
我不想使用“updated_at”和“created_at”行,但 Laravel 种子文件正在尝试更新它。我怎样才能禁用它? 这是我正在使用的代码: use Illuminate\Database\
我创建了一个全新的 Rails 应用程序,生成了一些脚手架和一些模型。经过几次测试后,我意识到 t.timestamps 生成的列不包括“传统” :null => false 选项。我需要这种行为,我
我正在使用 gorm http://jinzhu.me/gorm/在我的 golang 项目中处理数据库。当我更新记录时,update_at 时间与我的本地时间服务器不同。我该如何解决?? 最佳答案
我是一名优秀的程序员,十分优秀!