繁体   English   中英

处理具有 belongs_to 关系的 Rails 路由/模型

[英]Handling Rails routes/models with belongs_to relationship

所以这可能更像是一个约定问题,但我正在编写一个待办事项应用程序来学习如何将 rails 用作 API(我在正常使用 rails 方面有点中间)但这次我将它与 React 一起用于前端。

我正在制作一个简单的待办事项应用程序,特别是两个模型是“Lists”和“ListItems”。 列表当然是has_many ListItems,而 ListItem belongs_to List。

所以很自然地,我的路线设置如下:

      resources :lists do
        resources :list_items
      end

给我类似于: /api/v1/lists/:list_id/list_items等的路线,但是我看到一些人在做一个类似的应用程序设置它:

    namespace :v1 do
      resources :list_items
      resources :lists
    end

这让我感到困惑,因为当路由本身没有List_id参数时,您将如何处理将实际的“列表”参数传递给路由?

或者这是否会以某种方式更多地用于连接表..但是无论何时为特定列表创建list_item正确,您仍然必须填充List_id

就路由而言,有没有首选的方法? (我想创建表?)因为在这种情况下, has_many_through似乎不是真的必要?

除非故事有更多内容,否则您会以更传统的方式进行。 我建议您可以放心地忽略这种非嵌套方法。 我建议的唯一增强是使用shallow: true ,例如:

namespace :api do 
  namespace :v1 do 
    resources :lists do 
      resources :list_items, shallow: true
    end
  end
end

您可以在指南中阅读有关浅嵌套的更多信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM