私はusername、last_name、first_nameのいずれかの文字列をチェックする簡単な検索機能を実装しています。私は古いRailsCastでこのActiveRecordの方法を見てきました:それは名前、LAST_NAMEと最初の名前のキーワードを検索し、もしレコードを返すようにRails ActiveRecord - 複数の属性で検索
http://railscasts.com/episodes/37-simple-search-form
find(:all, :conditions => ['name LIKE ?', "%#{search}%"])
しかし、私はそれをどのように作るのですかフィールドの1つが用語と一致しましたか?
RailsCastのコードにSQLインジェクションが発生する可能性があるのでしょうか?
ありがとうございます!
ちょうど私が必要としたもの。それを明確に説明してくれてありがとう! – maru
'params [:search]'ではなく 'params'全体を渡すようにコントローラを変更した場合、クエリでは'%#{param [:search]}% {search}% "'それでもSQLインジェクションの影響を受けませんか? – Dennis
@Dennisはいそうです。あなたが使っている限り?あなたは問題ありません。 –