解决 Fixnum 错误
Resolve Fixnum error
我有一个来自 URL 的参数 (params[:authorization]),如您所见:
authorization_selected = params[:authorization]
new_parcel = params[:new_parcel].to_i
puts authorization_selected.class (in the console show type String)
puts new_parcel.class (in the console show type Fixnum)
在我的控制器中,有:
@portability = Portability.new
@portability.employee_id = authorization_selected.employee_id
然而这returns一个错误:
undefined method `employee_id' for 3:Fixnum
我需要两者都是整数。怎么做到的?
您在 authorization_selected
上调用 employee_id
方法,它是一个 String 并且不提供此方法。
显然这是行不通的。你可能想做
@portability = Portability.new
@portability.employee_id = authorization_selected
假设 params[:employee]
包含 employee_id
并且 Portability
是 ActiveModel 或 ActiveRecord。
也许你可以改变你的形式,让值可以通过初始化程序分配?
我有一个来自 URL 的参数 (params[:authorization]),如您所见:
authorization_selected = params[:authorization]
new_parcel = params[:new_parcel].to_i
puts authorization_selected.class (in the console show type String)
puts new_parcel.class (in the console show type Fixnum)
在我的控制器中,有:
@portability = Portability.new
@portability.employee_id = authorization_selected.employee_id
然而这returns一个错误:
undefined method `employee_id' for 3:Fixnum
我需要两者都是整数。怎么做到的?
您在 authorization_selected
上调用 employee_id
方法,它是一个 String 并且不提供此方法。
显然这是行不通的。你可能想做
@portability = Portability.new
@portability.employee_id = authorization_selected
假设 params[:employee]
包含 employee_id
并且 Portability
是 ActiveModel 或 ActiveRecord。
也许你可以改变你的形式,让值可以通过初始化程序分配?