как использовать strip_tags и усечь внутри моего Model.rb? - PullRequest
11 голосов
/ 17 февраля 2011

strip_tags работает для меня на моей странице просмотра, но не в моей модели (я использую его в функции before_save)

Ответы [ 5 ]

59 голосов
/ 10 июня 2014

Вы также можете получить доступ к помощникам в своих моделях, например:

ActionController::Base.helpers.strip_tags(text)
12 голосов
/ 28 мая 2014
ActionView::Base.full_sanitizer.sanitize(your_html_string)

Это будет работать для вас. Или вы можете определить помощника как:

def strip_html_tags(string)
    ActionView::Base.full_sanitizer.sanitize(string)
end

А затем используйте это как:

strip_html_tags(your_html_string)

Для удаления некоторых конкретных тегов передайте дополнительные параметры. Источник: Sanitize Rails API Dock

0 голосов
/ 10 сентября 2018

во вставке файла контроллера "включают ActionView :: Helpers :: TextHelper"

см .: https://www.ruby -forum.com / topic / 93036

0 голосов
/ 13 января 2016

Усилитель бедняка:

my_string[0, 145] 

Он будет работать в модели без вызова вспомогательных методов из ActionController :: Base.Это не добавит вам элипсис, но это, вероятно, легко исправить ...

0 голосов
/ 17 февраля 2011

strip_tags - это вспомогательный метод, и помощники, как правило, недоступны внутри моделей.

Возможно, вы захотите использовать что-то вроде sanitize gem вместо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...