【发布时间】:2010-09-16 03:28:47
【问题描述】:
有一些旧代码在某些情况下会修改参数。我相信它以前有效(不是 100%)。无论条件是否满足,我们现在都将 params 设置为 nil。
罪魁祸首在条件之内,我执行params = tmp.dup。即使条件为假,这也会导致更新操作出错。
我能够通过最少的测试重新创建
(导轨 2.3.5)
rails bug;
cd bug;
script/generate scaffold bug name:string;
rake db:create;
rake db:migrate;
编辑应用程序/控制器/bugs_controller.rb 添加到更新操作的开头
l_p = params.dup
if (false)
params = l_p.dup # NOT REACHED
end
脚本/服务器 WEBrick -p 5001
浏览至http://localhost:5001/bugs 创建一个新的错误 编辑错误 提交
【问题讨论】:
-
你的问题似乎让我很困惑。您能否用一些通用代码详细说明该场景,以便我们更准确地理解它。
-
是的,很混乱……请详细说明。
标签: ruby-on-rails controller params