创建列类型为整数的新模型时遇到一些问题。从表单发布后,该字段最终会显示nil
。
出于测试目的,我尝试制作一个名为“用户”的新应用程序和新脚手架。
rails g scaffold User username:string password:string type:integer
我转到表单并输入1
进入整数字段。在数据库中它以nil结束。我试着直接调试@user
,它也是nil
。 params[:user]
显示type => 1
有什么想法吗?
答案 0 :(得分:1)
这是因为params[:user][:type]
是一个字符串,您需要将其转换为整数。
params[:user][:type].to_i
答案 1 :(得分:0)
啊我刚刚发现了问题。显然,“类型”这个词是为列保留的,这就是它无效的原因。
我将列从类型重命名为user_type,现在它正在愉快地工作而不做任何修改。傻我。