Я не могу понять, как это сделать. У меня есть модели Пользователь , Учитель , Учитель Образование . TeacherEducation принадлежит Teacher , Teacher принадлежит User . Я хотел бы сохранить User , Teacher и TeacherEducation в одну строку на user.save
в моем контроллере. Это возможно? Если нет, то какой лучший способ сохранить это?
class User < ActiveRecord::Base
attr_accessible ...,
:teacher_attributes
has_one :teacher
accepts_nested_attributes_for :teacher
end
class Teacher < ActiveRecord::Base
belongs_to :user
has_one :teacher_education
accepts_nested_attributes_for :teacher_education
end
class TeacherEducation < ActiveRecord::Base
belongs_to :teacher
end
Прямо сейчас без TeacherEducation у меня такой взгляд
<%= form_for @user, :url => create_teacher_url, :html => {:class => "form-horizontal"} do |f| %>
<%= field_set_tag do %>
<%= f.fields_for :teacher do |builder| %>
# Fields of teacher
<% end %>
# Fields of user
<% end %>
Мой контроллер
class AdminsController < ApplicationController
def new_teacher
@user = User.new
teacher = @user.build_teacher
...
end
def create_teacher
user = User.new( params[:user] )
if user.save
...
end
end
end