Ruby on rails routes.rb中的资源与匹配

Ruby on rails routes.rb中的资源与匹配,ruby-on-rails,Ruby On Rails,在我的config/routes.rb文件中创建路由时,实际上有两种方法。一种是使用匹配语句,例如: match 'devices/:device_id/cards/destroy/:id' => 'Cards#destroy', :as => :delete_card_for_device 另一个是使用resources语句: resources :products do member do get 'short' post 'toggle' end en

在我的config/routes.rb文件中创建路由时,实际上有两种方法。一种是使用匹配语句,例如:

match 'devices/:device_id/cards/destroy/:id' => 'Cards#destroy', :as => :delete_card_for_device
另一个是使用resources语句:

resources :products do
  member do
    get 'short'
    post 'toggle'
  end
end
起初我喜欢match语句,因为我知道它在做什么,而且更容易理解,但我越是查看所有match语句,就越能看到其中许多语句可以替换为参考资料。我是否应该尝试将所有匹配语句转换为资源?资源比匹配语句更好吗?

@heneryville,
我没有你想要的确切信息,但我们所做的是在需要preety或自定义url时使用match,对于其他人来说,由resources语句提供的默认操作就足够了。

resources还将提供7个规范的RESTful操作,所以如果你需要这些,资源是最好的选择。如果你不需要这些,我想你走哪条路都不重要,但有更博学的人可能会回答这部分问题