Вот моя модель пользователя:
class User < ActiveRecord::Base
has_one :teacher, :dependent => :destroy
accepts_nested_attributes_for :teacher, :allow_destroy => true
attr_accessible :email, :password, :password_confirmation, :remember_me, :teacher_attributes
end
Вот моя модель учителя:
class Teacher < ActiveRecord::Base
belongs_to :user
attr_accessible :user_id, :first_name, :last_name
validates_presence_of :user_id, :first_name, :last_name
end
Вот моя форма:
<%= form_for(@user, :url => registration_path(:user)) do |user| %>
<%= user.text_field :email %>
<%= user.text_field :password %>
<%= user.text_field :password_confirmation %>
<%= user.fields_for resource.build_teacher do |t| %>
<%= t.text_field :first_name %>
<%= t.text_field :last_name %>
<%= t.text_field :phone %>
<% end %>
<%= user.submit 'Confirm' %>
<% end %>
За исключением того, что эта вещь победила 't "принять вложенные атрибуты" Мой журнал разработки говорит:
WARNING: Can't mass-assign protected attributes: teacher
Я не знаю, связано ли это, но форма не генерирует поля внутри массива teacher_attributes или чего-либо еще - это внутри учителя.Я предполагаю, что именно в этом моя проблема, но я не знаю, как заставить это поместить поля внутри.Пожалуйста, помогите.
Спасибо!