В моем приложении rails мои модели имеют метод to_html. Этот метод вызывается в одном из представлений, поэтому атрибуты модели могут отображаться правильно независимо от их классов (потому что все мои классы реализуют этот метод)RHTML to string - rails
Это аккуратное решение, но меня беспокоит одна вещь. Мне нужно написать этот html-код внутри двойных кавычек (как строки) и в конечном итоге избежать других двойных кавычек, которые я использую в своем html-коде вручную.
Вместо этого я хотел бы работать с файлами rhtml: читать их, оценивать в нем возможный рубиновый код и возвращать результат в виде строки с необходимыми экранированными символами. Я дам вам пример:
Следующий код:
<label for="blabla"> <%= ruby_variable.name %> </label>
при обработке должна вернуть мне:
"<label for=\"blabla\"> name </label>"
Кто-нибудь знает что-то, что уже делает это, или может мне точку в хорошее направление? Я думал написать код, который делает это сам. Но если что-то уже работает, я бы с удовольствием его использовал.
Благодаря
Спасибо, Shadwell. А со следующей структурой: ERB.new << - EOF <метка для = «BlaBla»><%= v %> EOF Я даже не нужно, чтобы избежать двойных кавычек, когда я один. Я использую to_html, чтобы избежать ifs на моих контроллерах и/или представлениях при отображении моделей. Он сохраняет код в чистоте. – Renan