Има ли нещо като дезинфекция за контролери?
Има ли нещо като дезинфекция за контролери?
Отговори (2)
Начинът, по който правя това, е следният:
# in application_controller.rb
def helpers
Helper.instance
end
class Helper
include ActionView::Helpers::TextHelper
include ActionView::Helpers::SanitizeHelper
end
# in your controller
def index
@message = "Sanitized #{helpers.sanitize(...)}"
end
Това пространство от имена на вашите помощници в контролера, един вид, чрез разширяване на вътрешен клас. Надявам се това да помогне!
person
jonnii
schedule
22.02.2010
между другото, в бъдеще трябва да се опитате да добавите повече информация към въпроса си.
- person jonnii; 23.02.2010
Получавам следната грешка:
undefined method
instance' за ApplicationController::Helper:Class` Какъв може да е проблемът?
- person Shripad Krishna; 22.06.2010
Това може да работи за някои други помощници, но извикването на
sanitize
причинява грешка: „недефиниран метод white_list_sanitizer“.
- person Alex Korban; 23.12.2010
получих
undefined method 'instance'
, използвано с отговора на Yuan Cheung :)
- person Milindu Sanoj Kumarage; 21.11.2012
чрез: http://www.adaruby.com/2009/12/16/how-to-use-actionview-helpers-in-your-rails-controller/
Мисля, че помощният клас трябва да бъде:
class Helper
include Singleton
include ActionView::Helpers::TextHelper
end
person
Yuan Cheung
schedule
06.11.2010