Tim*_*ter 8 ruby ruby-on-rails
我收到了错误
undefined方法`div'代表"11":String"
@startdate我提交表单时指向该行.我不明白发生了什么事.如果我在rails控制台中执行这些步骤,它可以正常工作.
在我的控制器中我有:
@startday = params["startday_#{i}".to_sym]
@startmonth = params["startmonth_#{i}".to_sym]
@startyear = params["startyear_#{i}".to_sym].to_s
@endday = params["endday_#{i}".to_sym]
@endmonth = params["endmonth_#{i}".to_sym]
@endyear = params["endyear_#{i}".to_sym].to_s
@startdate = params["startdate_#{i}".to_sym]
@price = params["price_#{i}".to_sym]
@currency = params[:currency]
@startdate = Date.new(@startyear, @startmonth, @startday)
@enddate = Date.new(@endyear, @endmonth, @endday)
Run Code Online (Sandbox Code Playgroud)
我发送的哈希是:
{
"startmonth_1"=>"2",
"startday_1"=>"11",
"startyear_1"=>"12",
"endmonth_1"=>"2",
"endday_1"=>"13",
"endyear_1"=>"12",
"price_1"=>"12",
}
Run Code Online (Sandbox Code Playgroud)
如果我做了
@startee = @startyear.to_s + '-' + @startmonth.to_s + '-' + @startday
return render :text => @startee
Run Code Online (Sandbox Code Playgroud)
我明白了:
11年12月2日
所以我没有看到问题.一切似乎都运转正常.
And*_*all 11
Date.new当你需要传递整数时,你正在传递字符串:
@startday = params[:"startday_#{i}"]
@startmonth = params[:"startmonth_#{i}"]
@startyear = params[:"startyear_#{i}"].to_s
@endday = params[:"endday_#{i}"]
@endmonth = params[:"endmonth_#{i}"]
@endyear = params[:"endyear_#{i}"].to_s
@startdate = params[:"startdate_#{i}"]
@price = params[:"price_#{i}"]
@currency = params[:currency]
@startdate = Date.new(@startyear.to_i, @startmonth.to_i, @startday.to_i)
@enddate = Date.new(@endyear.to_i, @endmonth.to_i, @endday.to_i)
Run Code Online (Sandbox Code Playgroud)
此外,如果您不需要在视图中使用这些变量,则无需将它们设为实例变量,而应将其设置为局部变量(即删除@名称中的前导).
| 归档时间: |
|
| 查看次数: |
4942 次 |
| 最近记录: |