0

列 profile_id を持つ User モデルと主キー列 ID を持つ Profile モデルがあります。プロファイルの create メソッドの実行が完了したら、profile_id 列がプロファイル モデルから id の値を取得するようにします。after_filter メソッドでこれができることはわかっていますが、メソッドには何を記述すればよいでしょうか?

4

1 に答える 1

1

プロファイルが User に属しており、User が has_one プロファイル de 外部キーを Profile モデルに持つ必要がある場合

したがって、プロファイル モデルには user_id フィールドがあります

プロファイルの create メソッドでは、次のようなことができます

  def create
    @profile = Profile.new(params[:profile])
    @profile.user_id = current_user.id
    respond_to do |format|
      if @profile.save
        format.html { redirect_to @profile , notice: 'profile was successfully created.' }
      else
        format.html { render action: "new" }
      end
    end
  end

またはこれの代わりに:

 @profile.user_id = current_user.id

あなたはできる

 @profile.user_id = params[:user_id]

パラメータを介してIDを送信する場合

次に、次のような関係を介してアクセスできます。

@profile.user.name @profile.user.email または current_user.profile.name

于 2013-06-07T19:13:20.427 に答える