<%= %> 中的单个 % 语法和 #comment 在 .erb 文件中不起作用
我刚刚看了一下 http://ruby-doc.org/ruby-1.9 /classes/ERB.html 以及 http://ruby- doc.org/ruby-1.8/classes/ERB.html。我看到 1.8 和 1.9 都支持以下内容。
% a line of Ruby code
但在浏览器的一行中尝试后,
% end ### changed from <% end %>
只是简单地显示 % end...想知道这里有什么问题吗?
(更新)另一个问题,当像#blabla这样的注释出现在<%= %>中时,rails似乎会出错,知道吗?
我的另一个问题的代码:
<%= @page_title || 'Pragmatic Bookshelf' #magic @page_title; a if a is true, else b%>
谢谢
I just took a look at http://ruby-doc.org/ruby-1.9/classes/ERB.html as well as http://ruby-doc.org/ruby-1.8/classes/ERB.html. I saw that the following is supported both in 1.8 and 1.9.
% a line of Ruby code
But after a tried it in a line of
% end ### changed from <% end %>
the browser simply shows % end in plain... Wondering what's the problem here?
(updated) another question, it seem when comment like #blabla appears in <%= %>, rails will get an error, any idea?
my code for another question:
<%= @page_title || 'Pragmatic Bookshelf' #magic @page_title; a if a is true, else b%>
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这是 ERB 中的注释:
而这是一个错误:
您不能将注释与
<%= %> 语法结合起来。
在您链接到的文档中,您可能会注意到这里的可选 -- 请参阅 ERB.new 注释:
然后,
ERB.new
有这样的说法:因此,您可能没有
ERB.new
选项中的 *trim_mode*。This is a comment in ERB:
whereas this is an error:
You cannot combine a comment and the
<%= %>
syntax.In the documentation you linked to, you might notice the optional -- see ERB.new note in here:
And then,
ERB.new
has this to say:So you probably don't have a *trim_mode* in your
ERB.new
options.如果向 *trim_mode* 传递包含以下一个或多个修饰符的字符串,ERB 将按列出的方式调整其代码生成:
% 启用对以 % 开头的行的 Ruby 代码处理
If *trim_mode* is passed a String containing one or more of the following modifiers, ERB will adjust its code generation as listed:
% enables Ruby code processing for lines beginning with %