ruby-on-rails - 参数名称中的变量

标签 ruby-on-rails ruby

如何将变量 i 放入参数名称中?

for i in 1..4
  if !params[:option#{i}].empty?
    @option#{i} = true
  end
end

尝试生成:if !params[:option1].empty?@option1 = true

我尝试使用{{i}} \i #{i}

更新:

正如 @Cary 指出的那样,了解以下内容也很有用:

params = { :option1=>[], :option2=>[2,3], 'cat'=>'9lives', :option3=>[4] }

最佳答案

你可以这样做:

for i in 1..4
  if !params["option#{i}".to_sym].empty?
    instance_variable_set("@option#{i}", true)
  end
end

希望对你有帮助!

关于ruby-on-rails - 参数名称中的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33968393/

相关文章:

javascript - Redactor JS - 使用 BootstrapValidator 验证表单

sql - 从连接表中删除事件记录条目而不删除原始记录

mysql - 铁路协会

ruby - 我的 Ruby IRC 机器人没有连接到 IRC 服务器。我究竟做错了什么?

ruby-on-rails - Activeadmin 可按多列排序

ruby - 在普通 Ruby 类中使​​用方法回调

ruby-on-rails - 在 Windows 上使用带有本地存储库的 capistrano 进行部署会引发错误

ruby-on-rails - mongoid 版本控制不能只破坏一个版本

php - Cron 是运行计划任务的唯一方法吗?

ruby - Dir.glob 是否保证顺序?