加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读