Mar*_*kus 4 arrays upgrade ruby-on-rails-3
自从升级到rails 3以来,我遇到了一个新问题,即从具有不同html标签的数组中显示html.
到目前为止,我只能编写method_name,返回一个不同的html标签数组.(即使它们是用字符串完成的......)
现在,数组显示为数组:
["<br/></br/>", "<b><a href=\"/...">...</a></b>,"<br/></br/>"]
Run Code Online (Sandbox Code Playgroud)
如何将其输出为html标签?我试图在每个数组条目的末尾运行to_html,但这给了mi错误:
undefined method `to_html' for "<br/></br/>":ActiveSupport::SafeBuffer
Run Code Online (Sandbox Code Playgroud)
任何想法如何解决这一问题?
谢谢马库斯
更新:感谢nimblegorilla的答案,输出现在看起来像:
["
", "...","
"]
Run Code Online (Sandbox Code Playgroud)
这是更好的,因为html被删除,但元素仍然显示为数组...
我认为你正在寻找'原始'方法:
<% array = ["<br/>Hello World</br/>", "<b><a href=\"/...\">...</a></b>" , "<br/><b>Yo</b></br/>"] %>
<%= raw array %>
Run Code Online (Sandbox Code Playgroud)
这样可以确保您打算将html显示为实际的html,而不是来自可能是XSS尝试的用户的不可信输入.
这个railscast更多地讨论了它:http://railscasts.com/episodes/204-xss-protection-in-rails-3
归档时间: |
|
查看次数: |
3396 次 |
最近记录: |