1
A
回答
2
您可以使用Sequel's migrations轉儲現有模式(請參閱「將當前模式作爲遷移轉儲」到鏈接頁面下)。
此外,我知道如果您使用Postgresql或MS SQL Server,則可以將數據庫轉儲爲腳本,既可以作爲架構,也可以作爲數據。如果您要使用的ORM沒有遷移工具(或者即使遷移工具),您也可以使用這些腳本,甚至將它們嵌入到遷移中(其他ORM可能也可以)。
編輯:生成模型。
如果你想生成模型,那麼續集有一個reflection API。像這樣的東西可以讓你開始:
generator = ->(table) {
s = <<STR
require 'sequel'
class #{table} < Sequel::Model
# other stuff here
end
STR
}
DB.tables.reject{|name| name == :schema_info }
.each do |table|
File.new "app/models/#{table}.rb" do |f|
f.write generator.call(table)
end
end
做關聯會更困難,但我認爲可能。看看Database#foreign_key_list和Model association basics。
1
這不是一個ORM,但有一個叫magic_models非常古老的寶石,其這樣做,不知道這是否仍然有效:http://magicmodels.rubyforge.org/
相關問題
- 1. 從現有模式生成初始數據庫遷移腳本
- 2. 從nodeJS中現有數據庫生成遷移和模型
- 3. Rails - 從模型生成遷移腳本
- 4. Ruby MySQL數據庫遷移腳本
- 5. Laravel /流明5.2從現有數據庫生成遷移表
- 6. 可能爲模型生成遷移?
- 7. 在現有大型數據庫上遷移數據庫
- 8. Rails模型生成器 - 從現有的數據庫
- 9. SQL數據庫腳本遷移
- 10. 錯誤數據庫遷移腳本
- 11. 從c#數據庫生成腳本
- 12. Rails從模型中自動生成DDL(或遷移腳本)的方法
- 13. 從模型類生成數據庫
- 14. 我可以在MySQL數據庫遷移文件中生成一個Ruby數據庫遷移文件
- 15. 如何爲現有的RoR模型生成數據庫模式或遷移文件
- 16. 遷移到現有的數據庫中沒有匹配遷移
- 17. Symfony從模型生成數據庫
- 18. 如何從Laravel的現有數據庫創建遷移和模型
- 19. 現有數據庫和遷移
- 20. UIManagedDocument遷移數據模型
- 21. 使用Perl自動生成數據庫模式和遷移
- 22. 從模型生成數據庫時出現多重性錯誤?
- 23. 如何在不遷移的情況下生成標識數據庫腳本
- 24. 如何在從實體框架模型中的模型生成數據庫時進行遷移第一個
- 25. 從VSTS數據庫版本生成數據更改腳本
- 26. rails 3:如何爲現有數據庫表生成模型
- 27. 從模式生成Rails遷移
- 28. 使用MySQL作爲數據庫從模型生成數據庫
- 29. Ruby on Rails的數據庫遷移
- 30. 從實體框架代碼優先的模型生成數據庫腳本
只是爲了檢查,你的意思是生成_models_的代碼,_migrations_不腳本? – iain 2013-03-16 19:35:13
用於遷移的umm ..腳本也將執行:3 – Kokizzu 2013-03-16 20:18:00
什麼是「模型腳本」? – 2013-03-16 20:31:12