json 列的参数范围
Scope with argument for a json column
我有一个 json 列 - document
。
我已经用 store_accessor :document, :color_code
指定了 color_code
属性
我可以成功查询数字 3 的所有实例:
MyModel.where("document ->> 'color_code' = '3'")
但是我如何将该查询转换为带有数字参数的范围,以便我可以更广泛地使用它?
您可以尝试这样的操作:
class MyModel
scope :with_color, ->(color) { where("document ->> 'color_code' = '?'", color) }
end
然后发布范围:
MyModel.with_color(3)
我有一个 json 列 - document
。
我已经用 store_accessor :document, :color_code
color_code
属性
我可以成功查询数字 3 的所有实例:
MyModel.where("document ->> 'color_code' = '3'")
但是我如何将该查询转换为带有数字参数的范围,以便我可以更广泛地使用它?
您可以尝试这样的操作:
class MyModel
scope :with_color, ->(color) { where("document ->> 'color_code' = '?'", color) }
end
然后发布范围:
MyModel.with_color(3)