2014-02-25 22 views
1

我刚开始学习RoR,我真的被卡住了。我创建了一个新的应用程序,并试图将电话号码字段添加到以前创建的窗体(门票)。我创建了数据库,添加使用迁移脚本:Rails的AddAttributeToModel将不会显示新添加的记录

rails generate migration AddPhoneToTickets phone:string 

加上使用迁移它:

rake db:migrate 

最后,我已经添加了外地的所有相关html.erb文件。 当我向App添加新记录时,会显示电话属性,当我填写并单击“更新”时,我收到消息:“票证已成功更新。” 不幸的是,电话号码没有保存在数据库中,也没有显示在列表中。

期待您的帮助。

回答

0

如果您使用Rails的控制器,并添加4寻ticket_params方法:手机.permit在其他属性列

2

应该是强大的参数有问题:如果你的ticket_params检查您TicketsController方法看起来像这样:

def tickets_params 
    params.require(:ticket).permit(whatever_other_params, :phone) 
end 

你还可以检查是否在你的服务器日志中,当保存它说的不允许的参数。

看一看这里: http://edgeguides.rubyonrails.org/action_controller_overview.html#strong-parameters

+0

感谢的快速反应。不幸的是,我没有在控制器代码中的任何地方提到任何参数。我不确定情况如何。 – user3292652

+0

如果你使用的是Rails 4,那么你的控制器中肯定有类似的东西(Rails 4基于强参数),否则你不应该更新任何参数。你能检查一下吗? – sissy

相关问题