один синтаксис% и #comment в <% =%> не работают в файлах .erb - PullRequest
0 голосов
/ 16 апреля 2011

Я только что посмотрел на http://ruby -doc.org / ruby-1.9 / classes / ERB.html , а также http://ruby -doc.org / ruby-1.8 /классы / ERB.html .Я видел, что следующее поддерживается как в 1.8, так и в 1.9.

% a line of Ruby code

Но после попытки в строке

% end ### changed from <% end %>

браузер просто показывает% end в простом виде ..Хотите знать, в чем здесь проблема?

(обновлено) другой вопрос , кажется, когда комментарий типа #blabla появляется в <% <strong>= %>, рельсы получатошибка, есть идеи?

мой код для другого вопроса:

<%= @page_title || 'Pragmatic Bookshelf' #magic @page_title; a if a is true, else b%>

Спасибо

Ответы [ 2 ]

1 голос
/ 12 марта 2012

Если * trim_mode * передается строка, содержащая один или несколько из следующих модификаторов, ERB будет корректировать генерацию своего кода, как указано ниже:

% включает обработку кода Ruby для строк, начинающихся с%

1 голос
/ 16 апреля 2011

Это комментарий в ERB:

<%# Where is pancakes house? %>

тогда как это ошибка:

<%= # I'll cook you some eggs, Margie. %>

Нельзя объединить комментарий и синтаксис <%= %>.

В документации, на которую вы ссылаетесь, вы можете заметить опцию - см. Примечание ERB.new здесь:

% a line of Ruby code -- treated as <% line %> (optional -- see ERB.new)

И затем, ERB.new имеет это, чтобы сказать:

Если * trim_mode * передается строка, содержащая один или несколько из следующих модификаторов, ERB настроит генерацию своего кода следующим образом:

% enables Ruby code processing for lines beginning with %

Таким образом, у вас, вероятно, нет * trim_mode * в ваших ERB.new опциях.

...