ruby-on-rails – 如何使用脚手架创建多个关系?

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 如何使用脚手架创建多个关系?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我是 Ruby on Rails的新手,我正在尝试创建一个低音吉他导师,以便教自己的RoR(和低音吉他).演练使用脚手架创建ActiveRecord类,但它们似乎对应于独立表;没有使用belongs_to或has_many.

我想创建三个类:Scale,GuitarString和Fret.每个Scale有许多吉他弦,每个都有很多的Frets.

如何使用Scaffold创建具有这种关系的类?有一种方法可以一次性完成,还是需要使用脚手架在无关状态下创建它们,然后手动添加关系?还是应该完全踢脚手架?

解决方法

几周前我开始学习Ruby on Rails,而且我发现通过不使用脚手架就可以轻松获取挂起的东西,并且通过使用脚手架来学习我的方式,并从命令行生成各种部分IDE).

然而,从我可以看出,当您使用脚手架来生成东西时,您会将其视为生成一个“资源”,因此您只需要一次创建一个资源,然后在手中添加关系.

但是,生成模型命令可以为您创建这些关系.让我们说你用脚手架来创建一个Scale资源.

你可以这样做

ruby script/generate model GuitarString name:string scale:references

比例:参考将在您的GuitarString模型上创建一个belongs_to:scale,但是您需要向您的比例模型添加has_many:guitarstrings.

生成模型命令还为您和其他需要的文件创建一个迁移脚本(fixtures),类似于脚手架,但不会自动创建视图或控制器或任何内容.

编辑:

这通常是你想要做的事情 – 使用生成/模型或生成/查看或生成/控制器或生成/迁移.大多数Rails开发人员不使用脚手架,因为它的“一刀切”全部很适合.但是,大多数的rails开发人员都使用了我提到的生成命令 – 它可以通过手工创建帮助和工具来节省时间,并为每个文件生成一个可添加的基本模板.

几个Ruby IDE像JetBrain的RubyMine有一些基本上执行这些命令的宏.在RubyMine中,您可以执行ctrl alt g,然后输入与要生成的对应的另一个键.

如所提到的,可以通过使用“引用”字来生成belongs_to关系.其他你将手工添加.

猜你在找的Ruby相关文章