rails工作日期和字符串连接

时间:2017-04-21 00:41:48

标签: ruby-on-rails ruby

我从控制器中该片段的最后一行获取nill的未定义方法

@showday = params["showdate(3i)"]
@showmonth = params["showdate(2i)"]
@showmonth_int = @showmonth.to_i
@showmonth = Date::MONTHNAMES[@showmonth_int]
@showyear = params["showdate(1i)"]
@showdate = @showmonth << " " << @showday << ", " << @showyear

2 个答案:

答案 0 :(得分:0)

您可以在这里使用Hash#fetch

@showday = params.fetch('showdate(3i)', '')
@showmonth = Date::MONTHNAMES[params.fetch('showdate(2i)', 0).to_i]
@showyear = params.fetch("showdate(1i)", '')
@showdate = @showmonth << " " << @showday << ", " << @showyear

答案 1 :(得分:0)

您可以尝试使用字符串插值,类似这样

@showdate = "#{@showmonth} #{@showday}, #{@showyear}"

你只需要插入#{}任何ruby代码并打印到字符串中,这是一种更好,更简单的方法来连接&#34;一个字符串