5

Szukałem, jak utworzyć db w środowisku produkcyjnym dla szyn i otrzymałem 2 odpowiedzi. Teraz jestem zdezorientowany tymi odpowiedziami.Utwórz DB w środowisku produkcyjnym w szynach

Jaka jest różnica między tymi dwoma? Co oznacza ten schemat?

Dlaczego potrzebujemy db:schema:load?

Z góry dziękuję.

+0

Prawdopodobny duplikat [Różnica między prowizją db: migrate db: reset i db: schema: load] (http://stackoverflow.com/questions/10301794/difference-between-rake-dbmigrate-dbreset-and-dbschemaload) – mlt

Odpowiedz

6

RAILS_ENV=production rake db:create stworzy bazę danych dla środowiska production,

natomiast

RAILS_ENV=production rake db:schema:load byłoby tworzenie tabel i kolumn w bazie danych zgodnie z schema.rb dla środowiska 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 

Aby uzyskać pełne informacje na temat, spójrz na this file.