[英]How to execute a Rails “Rake Task”
這是怎么回事?
我的朋友創建了一個rake任務來更新數據庫中的數據(因為我們有數據庫更改)。 以下是任務:
namespace :db do
task :update_database => :environment do
puts "Update do banco"
posts = Post.where("source_id is null").order("id")
done = Array.new
posts.each do |post|
if post.source_id.nil? and !done.include?(post)
posts2 = Post.where("content LIKE ? AND id != ?", post.content, post.id)
done.concat(posts2)
posts2.each do |post2|
post2.source_id = post.id
post2.save
end
end
end
end
end
我已經在本地主機中執行了此rake任務,但是我將項目部署到了heroku,現在我的項目將無法在線打開。 我不記得執行rake任務的命令是什么,我在任何地方都找不到。
我的問題是:
謝謝!
heroku run bundle exec rake db:update_database
應該做。
bundle exec
確保腳本在當前bundle的上下文中運行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.