ruby - 一行 if-then 没有 else 子句

标签 ruby ruby-on-rails-3 if-statement

我有以下一段代码,我想知道是否可以将其压缩为一行:

if self.id
  return if Party.find_by_id(self.id).name.downcase == self.name.downcase
end

我想知道是否可以将此声明放在一行中。

我知道你可以使用 if 语句? then_statement : else_statement 但希望你能在这里看到没有别的。也许 breakcontinue 或类似的东西? (如果你看到它,请随意对实际代码进行优化 - 这几乎就是这里的目的)

最佳答案

很简单,把它们塞在一起:)

return if self.id && Party.find_by_id(self.id).name.downcase == self.name.downcase

关于ruby - 一行 if-then 没有 else 子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10163898/

相关文章:

ruby - 哪个 Ruby ORM 支持 PostgreSQL 数组数据类型?

ruby - bundle 安装无法安装 libxml-ruby

ruby - 如何使用 Ruby 读取 Excel 电子表格的内容?

javascript - 恢复使用原型(prototype)

java - Java 温度计算器

ruby - Net::ReadTimeout on headless Firefox Watir-WebDriver cukes

ruby-on-rails-3 - Dragonfly - 上传的图片不显示

javascript - 如何将更新的 javascript 变量传递给 Ruby on Rails 中的 Controller ?

c# - 如何通过速记 "if-else"结果打破循环?

if-statement - 谷歌表,如果声明多个条件