11
我試圖手動創建/更新用於測試目的的db/structure.sql文件。我在application.rb中設置了「config.active_record.schema_format = :sql
」。我想知道是否有相當於「ActiveRecord::SchemaDumper.dump
」的命令來創建或更新structure.sql。我試過structure_dump,但產量爲零:需要幫助爲我的Rails應用程序創建structure.sql
> ActiveRecord::Base.connection.structure_dump
=> nil
我也試過路過一個文件到方法:
> File.open(File.join(Rails.root, 'db/structure.sql')) { |f| ActiveRecord::Base.connection.structure_dump() }
=> nil
到目前爲止,我已經能夠產生的唯一途徑或更新db/structure.sql是通過運行rake db:migrate。任何替代品?或者當我嘗試運行ActiveRecord :: Base.connection.structure_dump時錯過了一些東西?
'rake db:schema:dump'只是重新生成schema.rb。我想要得到structure.sql。 – MothOnMars 2013-03-01 00:49:57
我的不好。忘了你使用的是sql格式。請參閱更新的答案 – jvnill 2013-03-01 00:54:55
感謝您的更新。我真的想知道是否有一個非耙子任務的方式來做這件事,僅僅因爲我會從測試中調用它,並且調用耙子任務似乎不應該是必要的(儘管我很新Rails,所以我可能會假設太多)。我在想,如果ActiveRecord :: SchemaDumper.dump是等效於rake db:schema:dump的命令,那麼可能存在與rake db類似的單行命令:structure:dump ...? – MothOnMars 2013-03-01 01:09:07