Oop 现在设置为对象上的属性
我正在将一些旧的过程代码转换为OOP 假设我有一些程序代码,将记录标记为垃圾并记录完成的时间Oop 现在设置为对象上的属性,oop,orm,datamapper,Oop,Orm,Datamapper,我正在将一些旧的过程代码转换为OOP 假设我有一些程序代码,将记录标记为垃圾并记录完成的时间 UPDATE toys SET is_trashed = 1, trashed_date_timestamp = NOW() WHERE id = ?? 我从各种OOP书籍中收集到,在面向对象的范例中,您: “查找”作为对象的特定项,然后 修改其属性,然后 使用ORM映射器上的通用“更新”方法将其属性保存到db 这与代码中使用的以过程/db为中心的方法形成对比,在代码中,我运行SQL查询,使用db中的
UPDATE
toys
SET
is_trashed = 1,
trashed_date_timestamp = NOW()
WHERE
id = ??
我从各种OOP书籍中收集到,在面向对象的范例中,您:
- 我将isTrashed属性设置为TRUE
- 我将trashedDateTimestamp属性设置为
- 现在是什么?我希望确保它是数据库时间中的NOW(),而不是服务器上的NOW()
- 玩具对象的客户端如何处理获取和设置trashedDateTimestamp属性
简言之,现在如何以合理的精度存储到对象属性上?在没有任何传递参数的情况下存储
DateTime
对象。DateTime
对象将默认为当前时间。我想我明白了。因此,DateTime对象以某种方式与数据库上使用的时间同步?@JW:否。因为您不应该真正在意MySQL时间(因为它不是运行您的应用程序的时间,而是服务器的时间),请将所有时间存储为服务器时间,然后结束。谢谢。数据库时间是我在稳定地转换为OOP工作方式的过程中所坚持的最后一个以数据库为中心的东西。我将得到一些辅导来帮助我摆脱它o) 详细信息因您使用的ORM而异。但是,通常的想法是,如果您有一个具有日期/时间属性的对象,并且您有一个具有相应列的表。在这种情况下,如果您在保存期间未提供此列的值,则在保存/更新时,它会自动默认为数据库时间。@NazarMerza,听起来很有趣。你可以把它扩展一下作为一个可能的答案?