主页 > 知识库 > 关于Ruby on Rails路由配置的一些建议

关于Ruby on Rails路由配置的一些建议

热门标签:湖州u友防封电销卡 电销机器人厂商代理 白银外呼paas系统 地图标注赚钱项目注册 常德电销平台外呼系统软件价格 徐州网络外呼系统哪个好 高德地图标注客服 百度地图标注自定义图片 滴滴外呼系统

当你需要加入一个或多个动作至一个 RESTful 资源时(你真的需要吗?),使用 member and collection 路由。

  # 差
  get 'subscriptions/:id/unsubscribe'
  resources :subscriptions

  # 好
  resources :subscriptions do
   get 'unsubscribe', on: :member
  end

  # 差
  get 'photos/search'
  resources :photos

  # 好
  resources :photos do
   get 'search', on: :collection
  end

    若你需要定义多个 member/collection 路由时,使用替代的区块语法(block syntax)。

  

 resources :subscriptions do
   member do
    get 'unsubscribe'
    # 更多路由
   end
  end

  resources :photos do
   collection do
    get 'search'
    # 更多路由
   end
  end

    使用嵌套路由(nested routes)来更佳地表达与 ActiveRecord 模型的关系。

  

 class Post  ActiveRecord::Base
   has_many :comments
  end

  class Comments  ActiveRecord::Base
   belongs_to :post
  end

  # routes.rb
  resources :posts do
   resources :comments
  end

    使用命名空间路由来群组相关的行为。

  namespace :admin do
   # Directs /admin/products/* to Admin::ProductsController
   # (app/controllers/admin/products_controller.rb)
   resources :products
  end

    不要在控制器里使用留给后人般的疯狂路由(legacy wild controller route)。这种路由会让每个控制器的动作透过 GET 请求存取。

  # 非常差
  match ':controller(/:action(/:id(.:format)))'


您可能感兴趣的文章:
  • 关于Ruby on Rails视图编写的一些建议
  • Ruby on Rails中的ActiveResource使用详解
  • 详解Ruby on Rails中的Cucumber使用

标签:普洱 公主岭 梧州 荆门 三沙 永州 辽宁 张家界

巨人网络通讯声明:本文标题《关于Ruby on Rails路由配置的一些建议》,本文关键词  关于,Ruby,Rails,路由,配置,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《关于Ruby on Rails路由配置的一些建议》相关的同类信息!
  • 本页收集关于关于Ruby on Rails路由配置的一些建议的相关信息资讯供网民参考!
  • 推荐文章