瞎扯淡 rails readonly 使用问题求解!

kaka · May 23, 2013 · Last by kaka replied at May 24, 2013 · 2880 hits

Order 模型里的一个方法

def self.state_expired
       orders = joins('left join dom on dom.id=order.dom_id').where('dom.state=?', true).readonly(false)
       orders.each{|o| puts o.readonly? }
       orders
end

Order.state_expired 输出结果多是 true

Order.state_expired.readonly(false).each{|o| puts o.readonly? }

输出结果多是

false

为什么在方法调用之后 readonly 才生效

自己回复吧!现在暂时解决问题了 , 在模型加方法

def  readonly?
    false
end

但是就是不知道为什么那样不行...

2 Floor has deleted

重写 readonly?方法可以 save 了

#但是就是不知道之前这样不行,不知道为什么
joins(...).where(...).readonly(false)

#2 楼 @cantin

You need to Sign in before reply, if you don't have an account, please Sign up first.