Qu'est-ce qui est préférable?rails_xss, préférez raw ou .html_escape?
<%= raw @item.description %>
ou
<%= @item.description.html_safe %>
Qu'est-ce qui est préférable?rails_xss, préférez raw ou .html_escape?
<%= raw @item.description %>
ou
<%= @item.description.html_safe %>
Si vous êtes hors de la vue, puis l'assistant raw
n'est pas accessible (vous pouvez l'inclure partout, mais par défaut, il n'est pas disponible dans le modèle/contrôleur). Donc, dans ces cas, le html_safe
est la seule option saine.
Et vue intérieure? Eh bien, il y a le code source de l'raw
aide:
# actionpack-3.0.0/lib/action_view/helpers/raw_output_helper.rb
def raw(stringish)
stringish.to_s.html_safe
end
donc il n'y a presque pas de différence que le raw
appelle simplement #html_safe
Comme le fait remarquer Radek, cru utilise html_safe, mais parce qu'elle première jette une chaîne , il évite les exceptions nulles. Par conséquent, cru est légèrement meilleur!