我想通过2种方式保存updateAt。
1)如果我在保存数据时在该对象中传递了一些值,则它应在该日期之前保存,否则保存当前日期和时间。
ie今天的当前日期为Traceback (most recent call last):
File "e:\python1\sqlcompactdb\compact.py", line 7, in <module>
connection = adodbapi.connect(connection_string)
File "C:\Users\khan\AppData\Local\Programs\Python\Python36-32\lib\site-packages\adodbapi\adodbapi.py", line 116, in connect
raise api.OperationalError(e, message)
adodbapi.apibase.OperationalError: (InterfaceError("Windows COM Error: Dispatch('ADODB.Connection') failed.",), 'Error opening connection to "Provider=Microsoft.SQLSERVER.CE.OLEDB.4.0; Data Source=E:\\python1\\sqlcompact\\first.sdf;"')
,如果我将updateAt设置为'2018-03-13 17:40:44',则应将其设置为'2018-03-13 17:40:44'< / p>
2)它应该像autoUpdatedAt = True一样保存。因此,如果未设置updatedAt,则应该使用当前日期和时间。
即今天的当前日期为2018-07-27 16:41:14
,如果未设置updatedAt,则应将其设置为2018-07-27 16:41:14
感谢大家的努力。但是,我找到了以下解决方案。
在下面对特定的模型类别进行更改。
2018-07-27 16:41:14
// LifeCycle回调
autoUpdatedAt: false,
updatedAt:{
type: 'datetime',
defaultsTo: function(){return new Date();},
}
答案 0 :(得分:1)
您需要使用日期选择器组件并将其设置为必填字段,可以轻松将其默认为当前日期。
答案 1 :(得分:1)
正如@mikermcneil所提到的,我也建议将其保存为JS时间戳。您可以在以后需要时使用momentJS对其进行格式化。我还要处理控制器而不是模型中的逻辑。因此,例如,在控制器中,您可以创建一个dataToUpdate对象,该对象可能包含也可能不包含updatedAt数据,然后,当您对数据库进行调用时,它看起来像:
Record.updateOne({id}).set({
someField: dataToUpdate.someField,
someOtherField: dataToUpdate.someOtherField,
updatedAt: dataToUpdate.updatedAt ? dataToUpdate.updatedAt : Date.now(),
...
})