Rails AddAttributeToModel 不会显示新添加的记录



我刚开始学习RoR,我真的很卡住。我创建了一个新应用程序,并且正在尝试将电话号码字段添加到以前创建的表单(票证)。我已经创建了数据库,并使用以下方法添加了迁移脚本:

rails generate migration AddPhoneToTickets phone:string

加上使用迁移它:

rake db:migrate

最后,我已将该字段添加到所有相关的html.erb文件中。当我向应用程序添加新记录时,会显示电话属性,当我填写并单击"更新"时,我收到消息:"票证已成功更新。不幸的是,电话号码没有保存在数据库中,也不会显示在列表中。

期待您的帮助。

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

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

您还可以检查服务器日志中是否在保存时显示不允许的参数。

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

如果您使用的是 Rails 4,请在控制器中查找ticket_params方法,并在列出其他属性的地方将 :p hone 添加到 .allow

相关内容

  • 没有找到相关文章

最新更新