我是rails的新手,我开始编写我的第一个应用。目前我的(简化)模型结构如下所示:
- user account
- profiles : many
- money
- level
- rating
- etc...
所以一个人可以创建一个帐户,并且该帐户下可以有多个配置文件(几乎就像一个RPG游戏,你在一个帐户下有很多字符)。这些配置文件中的每一个都可以有许多不同的数据点来保存,比如金钱,评级等......这些相关模型中的一些可以进一步嵌套。
我正在为这些设置路线,我将使用config/routes.rb
中的资源,但我不想嵌套所有这些资源。
分别声明每个资源是否可以?
这两种方法都有任何长期/维护效益(嵌套与非嵌套)?
感谢您的帮助
答案 0 :(得分:3)
你可以选择路线。在路由中使用Rails的资源或约定使得过程更容易,但除此之外,没有真正的区别。
我唯一知道的最佳做法是确保URL的各个部分相关。例如:
/dog-food # OK
/cat-food # OK
/dogs/dog-food # OK
/cats/dog-food # NOT OK
如果您通过网址传递标识符,那么您最好 WANT 拥有嵌套网址结构的唯一时间。例如/dogs/14/food
(其中“14”是狗的ID)。但是,您也可以通过多种其他方式在多个页面之间传递数据。
路线非常灵活,您可以按照自己的意愿行事。在您的情况下,让/money
显示所有用户的资金列表没有问题。走那条路是没有意义的,但你肯定能够。
只是有意义,这才有意义。有意义吗?