访问For Variable以发送到函数

时间:2013-03-01 14:16:48

标签: ruby variables for-loop local-variables

当我运行我的ruby脚本时,我遇到的问题是“for”中无法识别我的变量。错误下方:

C:\workspaces\Gerar Build Versao>ruby main_03.rb
main_03.rb:18:in `executa_qry': undefined local variable or method `versao' for  main:Object (NameError)
    from main_03.rb:53:in `block in main'
    from main_03.rb:52:in `each'
    from main_03.rb:52:in `main'
    from main_03.rb:60:in `<main>'

更具体地说,当我设置函数'executa_qry'的参数时,不能识别与“for”一起初始化的变量'versao'。我的代码如下:

def main


  log_operacao = File.open('log.txt', 'w')
  conf = Configuracoes.new('parametros.conf')
  conf.carregar_arquivos_ignorados
  conf.carregar_caminho_branch
  conf.carregar_diretorio_release
  conf.carregar_diretorio_scripts
  conf.carregar_versoes_ativas

  for versao in 0..conf.versoes_ativas.size-1
      executa_qry(conf.diretorio_release, conf.versoes_ativas, versao, conf.diretorio_scripts)
  end
end
main

executa_qry代码

def executa_qry(diretorio_release, versoes_ativas, versao_atual, diretorio_scripts)
  system 'qry.bat ' + diretorio_release.to_s + ' ' + versoes_ativas[versao_atual].to_s + ' ' + 
      diretorio_scripts.to_s[0..diretorio_scripts.length-2] + 'qry.txt"'

0 个答案:

没有答案