加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 递归Rails嵌套资源

发布时间:2020-12-16 22:55:45 所属栏目:百科 来源:网络整理
导读:我有一个用于项目管理的Rails应用程序,其中有Project和Task模型.一个项目可以有很多任务,但任务也可以有无数个任务,无限制. 使用嵌套资源,我们可以有/ projects / 1 / tasks,/ projects / 1 / tasks / new,/ projects / 1 / tasks / 3 / edit等. 但是,您如何
我有一个用于项目管理的Rails应用程序,其中有Project和Task模型.一个项目可以有很多任务,但任务也可以有无数个任务,无限制.

使用嵌套资源,我们可以有/ projects / 1 / tasks,/ projects / 1 / tasks / new,/ projects / 1 / tasks / 3 / edit等.

但是,您如何表示RESTful任务的递归性质?我不想深入到另一个层次,所以可能会有以下情况:

map.resources :tasks do |t|
    t.resources :tasks
end

这会给我以下网址:

/tasks/3/tasks/new   
/tasks/3/tasks/45/edit

或者,当涉及到单个任务时,我可以使用/ tasks / 45 / edit

这是一个合理的设计吗?

凸轮

解决方法

超越单一嵌套路线的任何地方通常被认为是一个坏主意.

从The Rails Way的第108页开始:

Jamis Busk a very influential figure in the Rails community,almost as much as David himself. In February 2007,vis his blog,he basically told us that deep nesting was a _bad_ thing,and proposed the following rule of thumb: Resources should never be nested more than one level deep.

现在有些人会争论这个(在第109页讨论)但是当你谈论用任务嵌套任务时,它似乎没有多大意义.

我会以不同的方式处理你的解决方案,就像上面提到的那样,一个项目应该有很多任务,但是对于一项任务来说,许多任务看起来似乎不正确,也许那些应该被重新命名为子任务或者其他什么东西.线.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读