【发布时间】:2017-10-24 13:04:38
【问题描述】:
我想更新模型中的:position_status,如果:position_date 等于Date.today,假设我有:position_date,它是Mon, 26 Oct 2017 存储在数据库中,如果Date.today在那个特定日期,然后更新:position_status
我尝试将position_date 更改为今天的日期以查看是否会更新,但:position_date 没有更新。
attr_accessor :update_position_status
def update_position_status
if Date.today == self.position_date
self.update_attribute(:position_status => 'Filled')
end
end
【问题讨论】:
-
调用这个方法时你应该得到一个错误,因为
update_attribute需要 2 个参数。 -
你不应该在这里使用
attr_accessor。attr_accessor用于为实例属性生成 getter 和 setter 方法 - 不用于方法可访问性。
标签: ruby-on-rails activerecord model update-attributes