2016-08-22 6 views
-1

私はmemberを知り、collectionresourcesと同じではありません。
ですが、resourceはどうですか。 resource?にmembercollectionを使用していますか?リソースにメンバーやコレクションは必要ありませんか?

私は

resource :foo do 
    patch :confirm 
end 

resource :foo do 
    member do 
    patch :confirm 
    end 
end 

resource :foo do 
    collection do 
    patch :confirm 
    end 
end 

を見つけましたが同じです。

ルート=> /foo/confirm(.:format)
方法=> PATCH
アクション=> FoosController位resource blockため
名=> confirm_foo

ない文書を、たったの約resources blockを確認します。
Rails Routing from the Outside In — Ruby on Rails Guides

resourcememberまたはcollection収集方法ですを使用していませんか? memberまたはcollectionまたはこれを使用しないでください。これがベストプラクティスですか?

+1

'resource'方法[十分に立証されている](http://guides.rubyonrails.org/routing.html#単一のリソース)を注意深く読んでください。 –

+0

はい。メンバーとコレクションは言いません。 –

+0

あなたが尋ねるものは私には不明です。 _正しい方法ですか?どの方法ですか? 'member'や' collection'に 'confirm'アクションが何のために使われているのか、アプリケーションロジックに完全に依存しています。メンバーの 'member'、コレクションの' collection'です。 –

答えて

1

メンバーとコレクションは同じではありません。

メンバールートはメンバーに作用するため、IDが必要です。それはオブジェクトのコレクションに作用するので、

foo/:id/confirm

コレクションのルートにはありません。

foo/confirm

類似:difference between collection route and member route in ruby on rails?

追加より安らかなアクション:http://guides.rubyonrails.org/routing.html#adding-more-restful-actions

+0

'resources'の' member'と 'collection'は同じではないと思います。 'resource'についてはどうでしょうか。 –

+0

ああ私はそれが単数ではなかったことを忘れてしまった。そうですね、彼らはすべて同じです。 :) – codyeatworld

関連する問題