我正在使用Rails 5作为后端构建Backbone / Marionette Web应用程序。我发送带有嵌套属性的表单数据。不幸的是,这些嵌套属性被添加到:goal参数之外。如何在保存之前将它们插入主(:目标)参数中?否则它们将被忽略,不会插入数据库。
这些是发给服务器的params:
{"id"=>"7", "title"=>"ReBook", "gtype"=>"personal", "starts_at"=>"2017-03-03", "ends_at"=>"2017-10-03", "status"=>"completed", "user_id"=>1, "user_name"=>"Mike", "likes"=>0, "starts_at_formatted"=>"2017-03-03", "ends_at_formatted"=>"2017-10-03", "goalresults_attributes"=>{"description"=>"rrr", "progress"=>"333"}, "goal"=>{"id"=>"7", "user_id"=>1, "title"=>"Rebook", "gtype"=>"personal", "starts_at"=>"2017-03-03", "ends_at"=>"2017-10-03", "status"=>"completed"}}
答案 0 :(得分:0)
params['goal']['user_name'] = params['user_name']
params['goal']['likes'] = params['likes']
params['goal']['starts_at_formatted'] = params['starts_at_formatted']
params['goal']['goalresults_attributes'] = params['goalresults_attributes']
params['goal']['progress'] = params['progress']
在执行update_attributes
非常脏/丑陋。但它会完成工作