我有一个查询:
@results = the_db.where('name LIKE ?', '%#{input}%').paginate(
:page => params[:page],
:per_page => 50,
:group => "name",
:order => [
"CASE WHEN name like '#{input}%' THEN 0
WHEN name like '% %#{input}% %' THEN 1
END, name"
]
)
问题是这很容易被注射。(订单条款)我该如何解决这个问题?是否有可能以某种方式清理用户的输入以否定任何攻击?