gpt4 book ai didi

ruby-on-rails - ActiveRecord::Base.store 自动类型转换

转载 作者:数据小太阳 更新时间:2023-10-29 07:18:40 25 4
gpt4 key购买 nike

有没有办法自动对使用 ActiveRecord::Base.store 存储的值进行类型转换?

以这个完全不切实际的例子为例:

class User < ActiveRecord::Base
store :settings, accessors: [ :age ]
end

user = User.new(age: '10')
user.age # => '10'

我知道我可以覆盖 age 的 reader 方法以将其转换为整数,但我很好奇是否有未记录的方法。

试图避免这种情况:

class User < ActiveRecord::Base
store :settings, accessors: [ :age ]

def age
settings[:age].to_i
end
end

user = User.new(age: '10')
user.age # => 10

更新

寻找类似的东西:

class User < ActiveRecord::Base
store :settings, accessors: {:age => :to_i}
end

或者:

class User < ActiveRecord::Base
store :settings, accessors: {:age => Integer}
end

最佳答案

从 Rails 3.2.7 开始,没有办法自动类型转换值。如果我遇到一种方法,我会更新这个问题:/

关于ruby-on-rails - ActiveRecord::Base.store 自动类型转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11582101/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com