[英]Accessing ActiveRecord Models after a `db:test:prepare` in a Rake Task
在我的Rails應用程序中,我創建了一個rake任務,該任務使用db:reset
數據庫,使用db:test:prepare
准備測試數據庫,然后嘗試使用ActiveRecord使用示例數據重新填充數據庫:
namespace :db do
task :repopulate => :environment do
Rake::Task['db:reset'].invoke
Rake::Task['db:test:prepare'].invoke
puts Course.first.inspect
end
end
不幸的是,該任務在我運行時失敗,並抱怨Could not find table 'courses'
。 此外,它似乎沒有正確准備測試數據庫,因為在手動運行rake db:test:prepare
之前,所有測試都失敗了。 如果我注釋掉調用db:test:prepare
的行,那么一切似乎都可以正常工作(當然,除了它不准備測試數據庫之外)。 任何想法是什么問題或如何解決?
進行瑞克任務后,嘗試Course.reset_column_information。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.