build_ * не работает, несмотря на то, что has_one - PullRequest
0 голосов
/ 25 февраля 2010

Мое намерение здесь - просто создать соответствующий контакт, когда пользователь регистрируется, но указанный контакт никогда не создается, несмотря на использование build_ * с has_one:

Модель контакта:

has_one :user

Модель пользователя:

belongs_to :contact

Контроллер пользователей:

def signup
  @user = User.new
end

def signup_success
 @user = User.find params[:id]
 contact = @user.build_contact
 contact.contactable = School.first
 contact.save
end

protected

маршруты:

map.resources :users,
:collection => {
  :signup => :get
},
:member => {
  :signup_success => :any
}

Есть идеи, что я делаю не так? Спасибо за любые предложения.

1 Ответ

0 голосов
/ 25 февраля 2010

Работает ли это, если вы передаете атрибуты build?

contact = @user.build_contact(:contactable => School.first)  
contact.save
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...