Ruby on rails 相关模型是否必须在rails中具有嵌套路由

Ruby on rails 相关模型是否必须在rails中具有嵌套路由,ruby-on-rails,Ruby On Rails,我是rails新手,我开始编写我的第一个应用程序。当前我的(简化)模型结构如下所示: - user account - profiles : many - money - level - rating - etc... 因此,一个人可以创建一个帐户,并且可以在该帐户下拥有多个配置文件(几乎就像RPG游戏,在一个帐户下有多个角色)。然后,这些配置文件中的每一个都可以有许多不同的数据点需要保存,如金钱、评级等。。。其中一些相关

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

- user account
    - profiles : many
        - money
        - level
        - rating
        - etc...
因此,一个人可以创建一个帐户,并且可以在该帐户下拥有多个配置文件(几乎就像RPG游戏,在一个帐户下有多个角色)。然后,这些配置文件中的每一个都可以有许多不同的数据点需要保存,如金钱、评级等。。。其中一些相关的模型可以进一步嵌套

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

可以分别声明每个资源吗

这两种方法(嵌套与不嵌套)是否有任何长期/维护好处


感谢您的帮助

您可以按自己的意愿选择路线。在路由中使用Rails的资源或约定会使这个过程更容易,但除此之外,没有真正的区别

我所知道的唯一最佳实践是,您应该确保URL的各个部分相互关联。例如:

/dog-food        # OK
/cat-food        # OK
/dogs/dog-food   # OK
/cats/dog-food   # NOT OK
您最好只在通过URL传递标识符时使用嵌套URL结构。例如
/dogs/14/food
(其中“14”是狗的ID)。但是,您也可以通过多种其他方式跨多个页面传递数据

路线非常灵活,你可以随心所欲地使用它们。在您的情况下,让
/money
显示所有用户的钱列表没有问题。走那条路是没有意义的,但你肯定能做到


只要有意义,它就会有意义。有意义吗?

您可以按自己的意愿选择路线。在路由中使用Rails的资源或约定会使这个过程更容易,但除此之外,没有真正的区别

我所知道的唯一最佳实践是,您应该确保URL的各个部分相互关联。例如:

/dog-food        # OK
/cat-food        # OK
/dogs/dog-food   # OK
/cats/dog-food   # NOT OK
您最好只在通过URL传递标识符时使用嵌套URL结构。例如
/dogs/14/food
(其中“14”是狗的ID)。但是,您也可以通过多种其他方式跨多个页面传递数据

路线非常灵活,你可以随心所欲地使用它们。在您的情况下,让
/money
显示所有用户的钱列表没有问题。走那条路是没有意义的,但你肯定能做到


只要有意义,它就会有意义。有意义吗?

一般原则是避免嵌套超过一个级别。其次,除了平坦的通道外,完全可以接受嵌套。(控制器只需检查传入的内容)一般原则是避免嵌套超过一个级别。其次,除了平坦的通道外,完全可以接受嵌套。(控制器只需检查传入的内容)