私は新しい Rails 開発者で、次のようなユーザー プロファイルを持つアプリケーションを作成しています。Charlesがユーザー名である場所にlocalhost:3000/posts
ルーティングしlocalhost:3000/Charles
ます。
したがって、これを行うために使用しているコードは次のようになります。
ルート.rb
match "/:username" => "posts#index"
そして、私のコントローラーで:
@user = User.find_by_username params[:username]
@search = Post.search do |query|
query.fulltext params[:search]
query.with(:user, @user.id)
end
これは投稿インデックスに対してのみうまく機能しますが、posts/18 (たとえば) を /username/posts/18 にルーティングしたいと考えています。
基本的に、私はこのようなことをする方法があるかどうか尋ねています:
match "/:username" => "posts#index" do
resources :posts
end
助けてくれてありがとう!