【问题标题】:Ruby How to display message if include? statement is true or falseRuby 如果包含,如何显示消息?陈述是真还是假
【发布时间】:2013-05-16 17:51:46
【问题描述】:

我是非常 Ruby 新手,我正在尝试根据某些单词是否包含在数组中来显示两条消息之一。我当前的控制器包含以下内容:

@cookie = ["gluten", "sugar", "dairy", "chocolate"]

我的观点是这样的:

<%= @cookie.include?"gluten" %>

以上返回'true'并在页面上打印就好了。但是,尝试以下任一方法时,页面上不会打印任何内容。页面呈现正常,没有错误,但没有消息:

<%= puts "Sorry" if @cookie.include?"gluten" %>

<%= 
if @cookie.include?("gluten")
  puts "Sorry, you cannot eat this."
    else
  puts "You have the greenlight."
    end
%>

我希望我在语法上创建了一个非常简单的错误,或者我误解了包含的用法?功能。

【问题讨论】:

  • 抱歉 Greenlight

标签: ruby-on-rails arrays include


【解决方案1】:

看着红宝石,它似乎是健全的,http://rubyfiddle.com/riddles/d6798

一定是rails错误所以试试

<% if @cookie.include?("gluten") %>
  <%= "Sorry, you cannot eat this." %>
<%  else %>
  <%= "You have the greenlight." %>
<%  end %>

【讨论】:

  • 谢谢!那行得通。在不了解我的代码/安装的全部范围的情况下,您知道为什么我会遇到这样的 rails 错误吗?
【解决方案2】:

如果您想在一个 erb 语句中完成所有操作,您可以这样做:

不要使用“放置”。 "

另外 - 对于 erb, 语法,即逻辑,通常是 'each' 或 'if' 状态, 用于写入屏幕。大多数时候它是像

这样的 ruby​​ 对象的属性

【讨论】:

  • 这对以后会有帮助!非常感谢!
猜你喜欢
  • 2019-07-25
  • 2017-06-09
  • 2014-08-12
  • 1970-01-01
  • 1970-01-01
  • 2019-08-09
  • 2017-02-11
  • 2021-11-18
  • 1970-01-01
相关资源
最近更新 更多