2012-06-17 4 views
0

У меня был метод со следующей строкойкласса ноля при поиске меток

@noticias = Noticia.where(:tags.all => array).paginate(:page => params[:page]) 

это случается, что brakeman говорит, что у него есть возможный SQL-инъекция. Я попытался следующие вместо:

array = params[:query].split(' ') 
    array.each_with_index do |query, index| 
     array[index] = array[index].gsub(/<\/?[^>]*>/, "").downcase 
    end 


    array.each do |tag| 
     @noticias << Noticia.where(:tags => tag) 
    end 

, но я получил что-то вроде `Неопределенные < < для ноль: NilClass
Что мне не хватает?

ответ

1

Если вы используете Mongodb, вы можете быть уверены, что ваш код является SQL Injection бесплатным.

Хотя MongoDB не уязвим для чего-либо подобного SQL-инъекции, может быть стоит проверить строку поиска на что-либо вредоносное. mongodb tutorial

+0

Это то, что я думал, но как насчет ошибки? Что не так с моим кодом? –