Bir metin alanından kullanıcı girişini işleyen bir model yazıyorum. Http://blog.caboo.se/articles/2008/8/25/sanitize-your-users-html-input'taki tavsiyeye uyarak , before_validate'i kullanarak veritabanına kaydetmeden önce modeldeki girdiyi temizliyorum geri aramak.
Modelimin ilgili kısımları şuna benzer:
include ActionView::Helpers::SanitizeHelper
class Post < ActiveRecord::Base {
before_validation :clean_input
...
protected
def clean_input
self.input = sanitize(self.input, :tags => %w(b i u))
end
end
Söylemeye gerek yok, bu işe yaramıyor. Yeni bir Gönderi kaydetmeye çalıştığımda aşağıdaki hatayı alıyorum.
undefined method `white_list_sanitizer' for #<Class:0xdeadbeef>
Görünüşe göre, SanitizeHelper bir HTML :: WhiteListSanitizer örneği oluşturuyor, ancak onu modelime karıştırdığımda HTML :: WhiteListSanitizer'ı bulamıyor. Neden? Bunu düzeltmek için ne yapabilirim?