Rails模型生成器工具

时间:2012-01-07 02:00:42

标签: ruby-on-rails activerecord code-generation

这里有新手到Rails,我想知道是否有一个工具可以用来表示像MySQL WorkBench这样的拖放关系(下面的图片),并且可以为我们自动生成模型以及关系。

pic

我认为这将是一个很棒的工具,但是从快速搜索中找不到它是令人惊讶的,以这种方式创建模型有一些巨大的劣势吗?

4 个答案:

答案 0 :(得分:3)

简洁地回答你的问题,不,我不知道是否与rails直接接口。但如果您只想查看模型之间的关系,可以使用GraphvizRailRoad等宝石。

虽然我确信您可以使用类似MySQL Workbench的东西来混淆Rails应用程序使用的表格,但rails的迁移功能非常快速,有效并且与您的应用程序集成

Ruby on Rails Guides

中提供了生成模型和更新表属性的语法

例如,如果你想创建一个用户表,那只需几次击键:

rails generate model User user_name:string password:string favorite_food:string lucky_number:integer vegan:boolean

如果您决定要添加/删除/更改列,您可以执行以下操作:

 rails g migration AddStudentIdtoUsers student_id:integer
 rails g migration RemoveVeganfromUsers vegan:boolean

如果需要,您甚至可以在实施之前编辑这些建议的更改。然后,您将运行rake db:migrate来实际实施您已经完成的更改。

故事的道德,给CLI一个机会。 花费更少的时间搞乱SQL并花更多时间构建应用程序。

答案 1 :(得分:1)

我知道这个问题相当陈旧,但我最近开始构建一个相当复杂的模式(大约200个模型),我希望能够可视化。

到目前为止,我已经在MySQL工作台中创建了模式,并且发现了一个gem,允许工作台生成的.mwb文件用于创建ActiveRecord模型:https://github.com/woolf/active_workbench。也许这对您有用,因为您已经在使用MySQL Workbench。

答案 2 :(得分:0)

Rails的一个前提是你只能使用命令行和一个好的文本编辑器,并且可以充分利用框架。

因此使用命令行生成器非常快,就像使用迁移一样。掌握语法后,以这种方式创建模型比使用某些GUI要快得多。

答案 3 :(得分:-1)

RubyMine has this feature。给它一个try