2

ここで同様の質問を見たことがありますが、ror 開発を始めたばかりで答えがわかりませんでした。私はレーキタスクを持っています:

namespace:generate do 
    desc "Export to txt"
    task :txt => :environment do |t, args|
        puts "testing #{args}"
    end
end

コマンドラインからこれを行うと:

rake generate:txt

私は得るtesting {}

次のように値を引数として挿入しようとすると:

rake generate:txt[testvalue]また

rake generate:txt testvalue

最初のものは同じ出力を何もしませんtesting {}2番目のものはエラーが発生します。では、どのようにコマンドを呼び出して、args にいくつかの値を設定するのでしょうか?

4

2 に答える 2

1
namespace:generate do 
    desc "Export to txt"
    task :txt, [:arg1] =>  :environment do |t, args|
        puts "testing #{args[:arg1]}"
    end
end

rake generate:csv arg1="value"
于 2013-01-22T09:52:47.350 に答える
1

IIRC では、パラメーターを明示的に宣言する必要があります。

task :environment do
  puts "setting up env"
end

namespace :generate do
  desc "Export to txt"
  task :txt, [:filename] => :environment do |t, args|
    puts "testing #{args}"
  end
end

それで

% rake generate:txt['foo']
setting up env
testing {:filename=>"foo"}
于 2013-01-22T09:52:50.533 に答える