':controller(/:action(/:id))(.:format)'」というルーティングの設定方法は非推奨とされているかと思います。':controller(/:action(/:id))(.:format)'しかし、少し大きめのWebアプリケーションや、複雑なページ遷移を必要とするWebアプリケーションなどでは、routes.rbの記述が複雑になってしまったり、優先順位の関係で、予期せぬ動作不良を起こしてしまうような場合もあるのではないかと思っています。':controller(/:action(/:id))(.:format)'」この一行の設定だけ書いておけば、全てのルーティングを一つのルールで理解できるため、分かり易く、事故も起き難いのではないか、というような気もしています。(ルーティングの設定に掛ける時間も短縮でき、その分、本質的なアプリケーションの開発に割ける時間に充当できるとも考えられます。さんが回答なさっていますので、別の観点から説明してみます。前提として、2.x以降のRailsは「Web経由で色々なリソースを提供することでアプリケーションの機能を実現する」ためのフレームワークになりました。レールから降りずにRailsアプリを作る場合は、「このアプリケーションが提供するリソースはどんなものか」を考えるのがとてもとても肝要です。ユーザや企画サイドから、画面イメージや画面遷移図でやってくる「要望」をそのままルーティングやアクションにひもづけるのではなく、まずはどういうリソースを操作したいのかという観点で考えなおすのがレールに乗るコツです。':controller(/:action(/:id))(.:format)'」この一行の設定だけ書いておけば、全てのルーティングを一つのルールで理解できるため、分かり易く、事故も起き難いのではないか、というような気もしています。これは慣れの問題かなと思いますが、私なんかはresourcesが書いてあると「ああこのアプリはこういうリソースを提供してるのね。ついてるあたり、このリソースは読み取り専用なのね」と読めるのはとても嬉しいです。全体を概観しやすく『ルーティングの分かり易さ、共同開発者内での認識統一の図りやすさ』が向上します。いうことで、(ルーティングの設定に掛ける時間も短縮でき、その分、本質的なアプリケーションの開発に割ける時間に充当できるとも考えられます。)ルーティングというか、アプリケーションはどんなリソースを提供するか、というのを考えるはまさに『本質的なアプリケーション開発』ではないでしょうか。慣れや考え方の問題ではあるので、どうしても:controller/:action/:idを使うのを止めることはできませんが、Railsを使う以上はresourcesをうまく使いこなす方向に慣れたほうがよいと思います。いえ、この回答はやや抽象的にすぎますね。書いていますので、よろしければご覧ください。(0)ありがとうございます。routes.rbをルーティングの設定というよりは、リソースの一覧を書く場所、のように考えた方が納得しやすそうですね。実行されてしまう、という点だと思います。実行できてしまうのは問題があります。ユーザ削除されちゃった、とか)。行うブラウザ拡張機能などにより意図しないリソースの変更が起こりえます。メソッドが外部から実行し放題、というのも、無用にセキュリティ上のリスクを高めてしまうように思います。(0)ありがとうございます。GETアクセスによる副作用、セキュリティリスクの向上などが特に問題になる、という事ですね。01:47ウォッチこの質問への回答やコメントをメールでお知らせします。