ID が既にセッションにある場合は、それを URL 引数として渡す必要はありません。セッション ID を渡すことの危険性を考慮してください。セッション IDではない IDが渡された場合はどうなりますか? それをどのように処理しますか?
コメント ルートについては、次のようなものを検討する必要があります。
# config/routes.rb
resources :comments
次に、コメント コントローラーで、id is session のすべてのコメントをクエリします。
# app/controllers/comments_controller.rb
def index
@comments = User.find(session[:id]).comments // assuming that the session `id` variable is the identifier for a `User` model
end
したがって、セッションのコメントにアクセスするために必要なことは、/comments
パスにアクセスすることだけです。
編集:
エイリアスパスを介してセッションのユーザー コメントにアクセスするには/self/comments
、名前付きマッチ ルートを作成します。
# config/routes.rb
match 'self/comments' => 'user#self_comments'
comments_controller.rb
次に、 for にアクションを追加しますself_comments
。おそらく、コメントindex.html.erb
テンプレートを再利用して結果を表示できます。
# app/controllers/comments_controller.rb
def self_comments
@comments = User.find(session[:id]).comments
render :template => 'comments/index'
end