Ruby 模板 if else 语句

标签 ruby templates if-statement

<% @players.each do |player| %>
    <% if rad_win == true %>
    <%  @mywin = "Radiant Win" %>
    <%  puts "1111111" %>
    <% elsif rad_win == false %>
    <%  @mywin = "Radiant Loss" %>
    <%  puts "222222" %>
    <% else %>
    <%   @mywin = "Loss" %>
    <% end %>
<% end %>

在我的 test.html.erb 中,我有以下代码。我可以看到 rad_win 为 false,但该代码块未执行。即没有 22222222

最佳答案

您正在使用 ERB,这要求您想要显示的任何文本都必须与 <%= %> 一起使用。

因此:

<% @players.each do |player| %>
    <% if rad_win == true %>
    <%  @mywin = "Radiant Win" %>
    <%= "1111111" %>
    <% elsif rad_win == false %>
    <%  @mywin = "Radiant Loss" %>
    <%=  "222222" %>
    <% else %>
    <%   @mywin = "Loss" %>
    <% end %>
<% end %>

关于Ruby 模板 if else 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32893964/

相关文章:

ruby-on-rails - rails/Rack : retrieving request params from within canonical_host middleware

ruby-on-rails - 如何在 Rails 控制台抑制一些输出

php - Joomla 模板调整模块位置

python - Eclipse 或 TextMate 中 Mako 的语法高亮显示?

php - 使用 php if 语句验证输入值在 0 到 100 之间

ruby - 使用 nokogiri 或 mechanize 解析使用 JavaScript 呈现的电子邮件

c++ - 带有模板的 shared_ptr

java - 代码重复与新变量创建

java - 使用 IF 和 ELSE 语句设置 Enable 或 Disable 而不是 True 或 False

ruby-on-rails - Rails 5 - Resque 不处理排队作业