![](/img/trans.png)
[英]How to create database from schema.rb without initializing Rails?
[英]Generate the schema.rb from Rails Models (without Database)
我有一個過時的schema.rb
文件的Rails項目。 我也有一個空的數據庫。 如何從Rails模型生成schema.rb
?
您不應從模型中生成模式,而應從數據庫或遷移文件中生成模式。 如果您的遷移是最新的並且可以反映數據庫的狀態,則可以運行:
bundle exec rake db:schema:dump
它應該從您的數據庫生成schema.rb
文件。
這是在db:migrate任務執行后Rails運行的內容:
Rake::Task["db:schema:dump"].invoke if ActiveRecord::Base.schema_format == :ruby
你可以試試;
rake db:schema:load
ActiveRecord模型不存儲有關數據庫架構的任何信息。 該模式存儲在schema.rb
文件中。
每次遷移結束時,都會從數據庫生成文件。 因此,如果您擁有最新的數據庫,只需運行:
$ rake db:migrate
同步架構。 如果您的數據庫為空,則無法更新架構(實際上,那時候我想知道您的Rails模型正在使用什么)。
您唯一可以做的是:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.