ruby-on-rails – 如何循环控制器中的一些嵌套参数? Rails 3
发布时间:2020-12-17 03:03:38 所属栏目:百科 来源:网络整理
导读:我有一个’run’对象,可以在其中保存许多’层’.运行接受图层的嵌套属性,但是在发生各种不良事件之前,rails无法确保嵌套对象的参数有效.我正在尝试检查任何层上的’deposition_source_id’参数是否为空.我怎样才能遍历图层? 该行可以从一个层或任何层获取参
我有一个’run’对象,可以在其中保存许多’层’.运行接受图层的嵌套属性,但是在发生各种不良事件之前,rails无法确保嵌套对象的参数有效.我正在尝试检查任何层上的’deposition_source_id’参数是否为空.我怎样才能遍历图层?
该行可以从一个层或任何层获取参数. “0”指定图层. PARAMS [:运行] [:layers_attributes] [ “0”] [:deposition_source_id] 我该如何检查每一层?这些是参数: => {"utf8"=>"?","_method"=>"put","authenticity_token"=>"T+X6sSda5vV19hpMZEAdf5RWSKPhJrm/q9+NXxTC5G8=","run"=> {"number"=>"31310.0","start_time_string"=>"08/08/2012 at 11:08 AM","system_id"=>"4","technician_id"=>"4","duration"=>"","base_pressure"=>"","platters"=>"Apples","overcoats_string"=>"","planetary"=>"","layers_attributes"=> {"0"=> {"deposition_source_id"=>"","material_id"=>"60","lot_id"=>"118","thickness_goal"=>"32","measured_thickness"=>"3","tooling_factor"=>"","sensor_number"=>"","xtal_life"=>"","release_agent"=>"0","_destroy"=>"false","id"=>"3401"}}},"commit"=>"Update Run","action"=>"update","controller"=>"runs","id"=>"2319"} 解决方法
你可以这样做:
params[:run][:layers_attributes].each do |layer_number,params| # do your validation here on params[:deposition_source_id] end 如果您要做的就是确保deposition_source_id始终为空,我会这样做: deposition_source_id_is_empty = true params[:run][:layers_attributes].each do |layer_number,params| if params[:deposition_source_id].present? deposition_source_id_is_empty = false break end end if deposition_source_id_is_empty # do the things you'd do here if the parameters pass validation end (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |