Что делает в rails erb?
Я видел это недавно, подумал, что это интересно. Но я действительно не понимаю, что он делает?
Ex. У меня есть приложение rails, и я хочу загрузить JSON, так что мне не нужно делать второй запрос. Обычно я пишу что-то вроде этого.
<%= raw @model.to_json %>
или
<%= @model.to_json.html_safe %>
Я должен отправить сообщение raw
или html_safe
или json будет HTML экранирован и, следовательно, не проанализирован правильно. Однако это, похоже, работает тоже.
<%== @model.to_json %>
но я не могу найти любую документацию.
кто-нибудь знает, что это делает именно? т. е. это то же самое, что и вызов html_safe
или raw
? Или это еще не все?
2 ответов
<%==
эквивалентно raw
.
вставить что-то дословно использую
raw
helper вместо вызоваhtml_safe
:<%= raw @cms.current_template %> <%# inserts @cms.current_template as is %>
или, что эквивалентно, используйте
<%==
:<%== @cms.current_template %> <%# inserts @cms.current_template as is %>
Rails фактически использует erubis аппликации вместо ERB, который поддерживает множество других вещей.
<%==
именно так, как вы ожидаете, хотя: он испускает значение unescaped