我有一个rails模型对象,如下所示
[#<Object id: 876, input_type: 4, require_level: true>,#<Object id: 877, input_type: 4, require_level: true>, #<Object id: 878, input_type: 2, require_level: true>]
Input_types是一个哈希,如下所示
input_types = {"w"=>1, "x"=>2, "y"=>3, "z"=>4}
我想基于input_type属性替换
获得如下输出[#<Object id: 876, input_type: 4, require_level: true>,#<Object id: 877, input_type: 4, require_level: true>, #<Object id: 878, input_type: 2, require_level: true>]
我有以下代码:
objects.each do |object|
replacement_key = input_types.key(object.input_type)
object.attributes["input_type"] = replacement_key
end
这不会产生任何结果并返回对象,因为它处于初始阶段
答案 0 :(得分:1)
试试这个
assetsSubDirectory
答案 1 :(得分:0)
这样就可以了。没有json的更好的方法吗?
objects = objects.as_json
objects.each do |object|
replacement_key = input_types.key(object["input_type"])
object["input_type"] = replacement_key
end