相关模型必须在rails中具有嵌套路由

时间:2016-05-26 16:17:52

标签: ruby-on-rails

我是rails的新手,我开始编写我的第一个应用。目前我的(简化)模型结构如下所示:

- user account
    - profiles : many
        - money
        - level
        - rating
        - etc...

所以一个人可以创建一个帐户,并且该帐户下可以有多个配置文件(几乎就像一个RPG游戏,你在一个帐户下有很多字符)。这些配置文件中的每一个都可以有许多不同的数据点来保存,比如金钱,评级等......这些相关模型中的一些可以进一步嵌套。

我正在为这些设置路线,我将使用config/routes.rb中的资源,但我不想嵌套所有这些资源。

分别声明每个资源是否可以?

这两种方法都有任何长期/维护效益(嵌套与非嵌套)?

感谢您的帮助

1 个答案:

答案 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显示所有用户的资金列表没有问题。走那条路是没有意义的,但你肯定能够。

只是有意义,这才有意义。有意义吗?