Ruby的输出值

Sar*_*ara 0 ruby methods console ruby-on-rails

我可能错过了一些非常明显的东西.我有以下Ruby方法:

def pair_array

  return self.pair.each_slice(2) {
    |x| puts x.join(" & ")
  }.to_s
end
Run Code Online (Sandbox Code Playgroud)

当我尝试通过调用@ team.pair_array在我的Rails视图中显示此方法的值时,不会出现任何内容,但会在控制台上打印正确的值.我知道这可能是因为我正在使用看跌期权.如何在我的视图中显示此方法的结果?

Chu*_*uck 5

你会因为返回值而混淆打印.puts返回nil,并且each_slice不会返回块的结果.你想要的是这个:

def pair_array
  pair.each_slice(2).map {|arr| arr.join ' & '}
end
Run Code Online (Sandbox Code Playgroud)