小编pit*_*ess的帖子

Ruby"返回,除非是"成语

我有一个像臭的方法:

def search_record(*args)    
  record = expensive_operation_1(foo)
  return record unless record.nil?

  record = expensive_operation_2(foo, bar)
  return record unless record.nil?

  record = expensive_operation_3(baz)
  return record unless record.nil?

  record = expensive_operation_4(foo, baz)
  return record unless record.nil?
end
Run Code Online (Sandbox Code Playgroud)

对于"除非无效"的"回复结果",是否有一个好的红宝石成语?

或者我应该写一个return_unless_nil(&blk)方法?

(注意每个调用的args不同,所以我不能简单地迭代它们)

ruby idioms

16
推荐指数
1
解决办法
9900
查看次数

Bundler:总是在Gemfile中使用最新版本的git branch

我有一个带有私有git repo的Gemfile,格式如下:

gem 'magic_beans', :git => "git@git.example.com:magic_beans.git', :branch => 'super_beans'

当我bundle install,Gemfile.lock将其锁定到特定的SHA修订版.

我可以让bundler始终检查并使用最新的SHA提交和/或更新Gemfile.lock吗?请注意,当我将更新推送到super_beans分支时,我不会修改gem版本.

理想情况下,每次运行bundle它都会检查上游git repo以获得更新的分支SHA修订版.

ruby git bundler gemfile

12
推荐指数
1
解决办法
9874
查看次数

Rails 3与Sequel集成?

似乎在github上至少有四个repos声称可以在最新的Rails 3测试版中加入续集.

在Rails 3项目中有没有人成功用Sequel取代ActiveRecord?你能提供一些关于如何最好地解决它的提示吗?

我有兴趣在Rails 3上开始一个新的项目,并试图在右脚下车:理想的续集,minitest和omniauth(如果它不会痛苦的设计).我知道这不是幸运的堆栈,但这些宝石吸引我的蜘蛛感.我正在寻找任何可以帮助我解决任何宝石问题和冲突的建议.

ruby minitest omniauth ruby-on-rails-3 sequel

4
推荐指数
1
解决办法
2244
查看次数

标签 统计

ruby ×3

bundler ×1

gemfile ×1

git ×1

idioms ×1

minitest ×1

omniauth ×1

ruby-on-rails-3 ×1

sequel ×1