ユーザーとプロファイルの 2 つのモデルがあります。
ユーザー名とパスワードをユーザーに保存し、他のユーザー プロファイルの詳細をプロファイルに保存したいと考えています。
現在、
ユーザーモデルには次のものがあります。
has_one :profile
accepts_nested_attributes_for :profile
attr_accessible :email, :password
プロファイルモデルには
belongs_to :user
attr_accessible :bio, :birthday, :color
ユーザーコントローラーには
def new
@user = User.new
@profile = @user.build_profile
end
def create
@user = User.new(params[:user])
@profile = @user.create_profile(params[:profile])
if @user.save
redirect_to root_url, :notice => "user created successfully!"
else
render "new"
end
end
ビュー new.html.erb には、ユーザーとプロファイルの両方のフィールドがあります。
ただし、この Web アプリケーションを実行すると、次のエラーが表示
されます: 保護された属性を一括割り当てできません:
デバッグ時にプロファイルが作成アクション
で@user = User.new(params[:user])
にスタックする
ので、何が問題なのですか? :profile_attributes を attr_accessible に入れてみましたが、役に立ちません!
解決策を見つけるのを手伝ってください。