我目前正在设计一个在Rails 3.1应用程序中使用的数据库模式。
目前,我正在使用MySQL工作台可视化地设计模式,然后手动将其转换为Rails迁移和模型。
有没有人能指出,是否有任何解决方案可以让模式可视化地设计,并自动(即通过脚本)转换成Rails?
谢谢!
发布于 2012-01-24 22:22:46
首先,“数据库优先”的方法确实不是使用Rails的首选方法……但如果你真的想...
如果从您的模式生成表,则可以配置Rails应用程序的config/database.yml文件以连接到您的数据库,然后调用从数据库生成db/schema.rb文件的rake db:schema:dump。然后,您可以创建迁移并将代码从db/schema.rb复制到change (或self.up)方法中。
请注意,这不会自动创建模型类-您必须自己创建这些类,记住在rails generate model中使用--skip migration,并且可能需要自由使用set_table_name (将模型类映射到正确的表名)、alias_attribute (将模型属性映射到正确的列)和set_primary_key。
对于老版本的Rails,有一些更完整的方法(Magic Model Generator和reverse_scaffold是我发现的两个),但我不知道有什么方法已经升级到可以与Rails 3一起使用。
发布于 2014-12-23 03:46:20
SQL Editor是一个Mac应用程序,它允许您可视化地设计DB模式,然后将其导出为您可以轻松导入到Rails中的模式。
您仍然需要自己创建模型。
发布于 2012-01-24 22:26:35
我认为Mogwai ERD (http://mogwai.sourceforge.net/index.html)会帮到你,在那里你可以设计你的ERD并将其转换成一个数据库模式
我认为没有设计rails模式的软件,它只是让您的模式遵循rails约定,当然rails可以配置为几乎任何模式
https://stackoverflow.com/questions/8987790
复制相似问题