Ann*_*nna 7 database schema ruby-on-rails production-environment ruby-on-rails-4
我已经搜索了如何在生产环境中为rails创建数据库并得到了2个答案.现在我对这些答案感到困惑.
RAILS_ENV=production rake db:create db:schema:load
RAILS_ENV=production rake db:create
Run Code Online (Sandbox Code Playgroud)
这两者有什么区别?这个架构意味着什么?
我们为什么需要db:schema:load
?
提前致谢.
RAILS_ENV=production rake db:create
会为production
环境创建数据库,
而
RAILS_ENV=production rake db:schema:load
将根据在数据库中创建表和列schema.rb
的production
环境.
task :load => [:environment, :load_config] do
ActiveRecord::Tasks::DatabaseTasks.load_schema_current(:ruby, ENV['SCHEMA'])
end
task :create => [:load_config] do
ActiveRecord::Tasks::DatabaseTasks.create_current
end
Run Code Online (Sandbox Code Playgroud)
请查看此文件以获取有关该主题的完整信息.