I have a Project model and it has some text attributes, one is summary. I have some projects that have html tags in the summary and I want to convert that to plain text. I have this method that has a regex that will remove all html tags.
def strip_html_comments_on_data
self.attributes.each{|key,value| value.to_s.gsub!(/(<[^>]+>| |\r|\n)/,"")}
end
I also have a before_save filter
before_save :strip_html_comments_on_data
The problem is that the html tags are still there after saving the project. What am I missing?
And, is there a really easy way to have that method called in all the models?
Thanks,
Nicolás Hock Isaza
untested
where html_input is a string containing HTML tags.
EDIT
You can strip all tags by passing
:tags=>[]as an option:plain_text = sanitize(html_input, :tags=>[])Although reading the docs I see there is a better method:
plain_text = strip_tags(html_input)Then make it into a before filter per smotchkiss and you’re good to go.