2015-06-12 42 views
0

我想將舊數據庫導入到rails中的新模式中。 對於我有.rake文件:將舊數據庫導入到Rails中的新模式中

# /lib/tasks/project_name.rake: 
 

 
namespace :project_name do 
 
    require Rails.root + "lib/tasks/importer" 
 

 
    desc "Import old database, usage: rake project_name:import['old_database_name']" 
 
    task :import, :oldDatabase, needs::environment do |t, args| 
 
    args.with_defaults(oldDatabase: "import") 
 

 
    oldDatabaseName = args.oldDatabse 
 
    newDatabaseName = YAML::load(IO.read(Rails.root.join("config/database.yml")))[Rails.env]["database"] 
 

 
    importer = Importer.new newDatabaseName, oldDatabaseName 
 
    importer.execute 
 
    end 
 
end

,但補充說,文件我甚至不能使用任何耙命令後。 這裏是微量的一些行:

no implicit conversion of pathname into string 
 
/Users/user/Desktop/rails/dis/lib/tasks/project_name.rake:2:in `block in <top (required)>' 
 
/Users/user/Desktop/rails/dis/lib/tasks/project_name.rake:1:in `<top (required)>'
我通過看這個教程做:

http://www.frick-web.at/blog/import-old-database-in-new-schema-with-mysql-and-rails

回答

1

嘗試

require Rails.root.join("lib/tasks/importer").to_s 
相關問題