私はレールが初めてで、ネストされたルートに問題があります。
ユーザーがいて、それぞれが別のモデルに 1 つのプロファイルを持っています。ユーザー プロファイルにアクセスしようとしています
/users/1/profile
エラーが発生します:
ID のないユーザーが見つかりませんでした
要求パラメーターは次を示します。
{"user_id"=>"1"}
これに似た質問がありましたが、これに対する解決策が見つかりません。
ルート:
resources :users do
resource :profile
end
プロファイル コントローラ:
class ProfilesController < ApplicationController
def show
@user_profile = User.find(params[:id]).profile
end
end
ユーザーモデルから:
has_one :profile, dependent: :destroy
before_create :build_profile
プロファイル モデルから:
belongs_to :user
User.find(params[:id]).profile
それが私が間違っているところだと思います。を に変更するfind(params[:id])
とfirst
、最初のユーザーのプロファイルが正常に返されます。
どんな助けにも感謝します!