Предположим, у меня есть 2 модели: 1. user и 2. userProfile
у нас есть взаимно-однозначные отношения между двумя моделями.
Затем я хотел бы создать Usercontroller и создать пользователя с такими полями, как имя пользователя и пароль в user, и другими деталями, такими как адрес, номер мобильного телефона и т. д. в userprofile.
user_id - это внешний ключ в user_profile
Затем я создал new.html.erb в пользовательском представлении, которое отображает все вышеуказанные поля в той же форме. Тогда как я могу сохранить данные в двух разных таблицах user и userprofile соответственно.
what I tried is
1. has_one :user_profile in user.rb and belongs_to :user in user_profile.rb
2. accepts_nested_attributes_for :user_profile in user.rb
user_controller:
def create @user = User.new(params[:user]) if @user.save @userprofile = @user.create_user_profile(params[:user_profile]) redirect_to root_url, :notice => "Signed up!" else render "new" end end
3. Then I got error the only userid is created in user_profile and also update run to make user_id nil which can't be! so raising error:
Unknown column 'user_profiles.' in 'where clause': UPDATE `user_profile` SET `user_id` = NULL WHERE `user_profiles`.`` IS NULLso what's wrong and how to troubleshoot this?