我想为ruby datamapper模型添加两个新属性,一个是时间戳属性的日期转换,另一个是通过唯一键连接的另一个对象的值。
所以对于第一种情况 属性:日期,日期时间
,我想添加另一个 属性:date_date,日期 默认情况下将等于date.to_date
答案 0 :(得分:0)
您应该看到以下文档:https://datamapper.org/docs/properties.html
特别是有关“可用类型”和“设置默认值”的部分。
您可以这样做:
property :date_date, Date, default: -> do |obj, prop|
obj.date.to_date
end
您也可以通过回调(https://datamapper.org/docs/callbacks.html)进行设置,例如:
property :date_date, Date
before_save :set_date_date
def set_date_date
self.date_date = date.to_date
end
请注意,它在Rails的ActiveRecord中的工作方式也基本相同。