0
프로필이 has_one 인 사용자 모델이 있습니다. 사용자 모델에는 사용자가 등록 할 때 설정되는 이름 속성이 있습니다. 그러나 사용자가 프로필의 편집보기에서 이름 속성을 업데이트하도록하고 싶습니다. 어떻게해야합니까?다른 연관된 모델의 뷰에서 모델의 속성을 편집하는 방법
프로필이 has_one 인 사용자 모델이 있습니다. 사용자 모델에는 사용자가 등록 할 때 설정되는 이름 속성이 있습니다. 그러나 사용자가 프로필의 편집보기에서 이름 속성을 업데이트하도록하고 싶습니다. 어떻게해야합니까?다른 연관된 모델의 뷰에서 모델의 속성을 편집하는 방법
중첩 속성 및 fields_for 양식 도우미는 친구입니다. 당신이 중첩 된 사용자를 제공 할 수 있습니다
class Profile < ActiveRecord::Base
belongs_to :user
accepts_nested_attributes_for :user
end
는 프로필 속성 :
ruby-1.9.2-p0 > params = { :profile => { :some_profile_attr => "some value", :user_attributes => { :name => "some_new_name" }}}
=> true
ruby-1.9.2-p0 > profile.update_attributes params[:profile]
=> true
ruby-1.9.2-p0 > profile.user.name
=> "some_new_name"
당신은 사용자가 당신이 fields_for 형태 도우미 사용할 수있는 프로필 양식을 통해 속성을 업데이트 할 :
<%= form_for @profile do |profile_form| %>
[..]
<%= profile_form.fields_for :user do |user_form| %>
<%= user_form.text_field :name %>
<% end %>
[..]
<% end %>
을
왜 사용자 서식을 사용하여 예제를 제공 했습니까? 프로필 양식에서 사용자 속성을 편집하고 싶습니다. 나는 내가하고 싶은 일은 주위에 사용자와 프로필을 바꾸는 것을 제외하고는 당신의 모범이라고 생각합니다 ... –
네, 죄송합니다. 아직 커피가 없었다 :-) 나는 그것을 바꿨다. –