1

lib/tasks フォルダーに新しい .rake ファイルを追加しました。

レーキ タスクでは、次のようにしています。

p = Post.new( ....)
p.save!

タスクを実行すると、次のエラーが表示されます。

rake aborted!
uninitialized constant Post

Post モデルをインポートするにはどうすればよいですか?

4

2 に答える 2

5

おそらく環境宣言が欠落していると思います。これは、Rake が Rails 環境を認識するために必要です。rake タスクの呼び出しは次のようになります。

task :my_rake_task => [:environment] do

    # Your code here

end

それが問題を解決するかどうか教えてください!

于 2012-10-15T02:53:51.527 に答える
5

タスクを Rails 環境に依存させたい。タスク宣言の後に => :environment を次のように指定することで、これを行うことができます。

namespace :my_task do 
  desc "an example task"
  task :create_post => :environment do 
    Post.new .... # the rest of the implementation
  end
end
于 2012-10-15T02:55:36.213 に答える