gpt4 book ai didi

ruby-on-rails - rails : Iterate dynamically over params hash to verify they exist

转载 作者:行者123 更新时间:2023-12-03 01:55:15 24 4
gpt4 key购买 nike

我有一个表单,其中有相当多的参数被传递到 Controller 进行处理。不同的参数“集”以类似的方式命名:

setname1_paramname
setname1_paramname2

现在,我需要检查这些“集合”之一以验证是否已提交所有字段。现在,我正在使用手动 If Or 样式语句来执行此操作:

if setname1_paramname.blank? || setname1_paramname2.blank? || ...etc
@object.errors.add_to_base("All setname1 fields are required.").
render :action => 'new'
return false
end

有没有办法以编程方式循环这些参数,并将它们添加到@object错误中?

谢谢!

最佳答案

因为听起来你有很多参数,而且似乎你需要能够对参数组进行检查,也许这样的东西会有用?基本上,迭代参数哈希,并使用正则表达式来定位参数集。然后,在循环内,您可以进行任何类型的验证:

params.each do |key, value| 
# target groups using regular expressions
if (key.to_s[/setname1.*/])
# whatever logic you need for params that start with 'setname1'
if param[key].blank?
@object.errors.add_to_base("All setname1 fields are required.").
end
end
end

关于ruby-on-rails - rails : Iterate dynamically over params hash to verify they exist,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4798251/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com