我要疯了。我有一个带有下拉框的表单
<select name="user[interest1]">
<option value="1">Something</option>
<option value="2">Another Something</option>
<option value="3">Another Something^3</option>
</select>
发布此内容应使用字段“interest1”上的整数更新用户模型。发送表单时出现此错误:
Interest1(#70226795163000) expected, got String(#70226775629700)
Request
Parameters:
{"utf8"=>"✓",
...
"interest1"=>"3"},
"commit"=>"Update"}
好的,这是一个正在发布的字符串,尽管它应该是一个整数。很简单,我想所以我要在我的控制器中捕获该参数并将其设为整数:
params[:user][:interest1] = params[:user][:interest1].to_i
现在我明白了:
Interest1(#70226795828040) expected, got Fixnum(#70226775624220)
Request
Parameters:
{"utf8"=>"✓",
...
"interest1"=>3},
"commit"=>"Update"}
尽管这是我真正期望的,但它不会在我的数据库中更新。我做错了什么?
谢谢你的帮助。