从参数构造订单方法时,如何避免 Rails 中的刹车警告?
def index
@methods = [:name, :manager, :deadline]
assignments = Assignment.order(sort_column(@methods) + " " + sort_direction).received(current_user).root
end
def sort_column(column_names)
column_names.each do |column|
return column if column == params[:sort]
end
return 'updated_at'
end
def sort_direction
params[:direction] == 'asc' ? 'asc' : 'desc'
end
我正在努力避免将用户生成的代码直接放入查询中,但制动器仍然警告(中等可信度)这是一个 SQL 注入漏洞。
这是误报吗?如果没有,我该如何纠正这个漏洞?
如果是这样,有没有一种简单的方法可以避免误报?