几周前我开始学习 Ruby on Rails,我发现通过不使用脚手架并从命令行(或在IDE)。
但是,据我所知,当您使用脚手架生成事物时,您会将其视为生成“资源”,因此您一次只会创建一个资源,然后再手动添加关系。
但是,生成模型命令可以为您创建这些关系。假设您使用脚手架创建了 Scale 资源。
然后你可以做
ruby script/generate model GuitarString name:string scale:references
scale:references 将belongs_to :scale
在您的 GuitarString 模型上创建一个,但您需要将 has_many :guitarstrings 添加到您的比例模型中。
生成模型命令还为您和其他需要的文件(夹具)创建迁移脚本,类似于脚手架,但不会自动创建视图或控制器或任何东西。
编辑:
这通常是您想要做的事情 - 使用生成/模型或生成/查看或生成/控制器或生成/迁移。大多数 Rails 开发人员不使用脚手架,因为它的“一刀切”很少能完美地适应事物。但是,大多数 Rails 开发人员确实使用了我提到的生成命令——它可以节省手动创建帮助程序和固定装置的时间,并且它为每个文件提供了一个可以添加的基本模板。
像 JetBrain 的 RubyMine 这样的几个 Ruby IDE 具有基本上执行这些命令的宏。在 RubyMine 中,您可以执行 ctrl+alt+g,然后输入与您要生成的内容相对应的另一个键。
如前所述,belongs_to 关系可以通过使用“references”一词来生成。其他您将手动添加。