2010-03-26 1 views
2

Я искал и много пробовал, но я не могу выполнить это, как я хочу .. так вот моя проблема.Использование полей из ассоциации (has_one) модель с formtastic в рельсах

Мои модели:

class User < ActiveRecord::Base 
    has_one :profile 
    accepts_nested_attributes_for :profile 
end 

class Profile < ActiveRecord::Base 
    attr_accessible :user_id, :form, :title, :name, :surname, :street, :housenumber, :zipcode, :place, :phone, :mobile, :fax, :url 
    belongs_to :user 
end 

На мой взгляд:

<% semantic_form_for @user do |form| %> 
    <%= form.inputs :login, :email, :password%> 
    <% form.semantic_fields_for :profile do |profile| %> 
    <%= profile.inputs %> 
    <% end %> 
    <%= form.buttons %> 
<% end %> 

Моя проблема заключается в том, что, когда я изменить человека, то это показывает мне данные о профиле. Я бы хотел, чтобы отображались поля из профиля даже при создании пользователя.

Большое спасибо!

ответ

5

Вы должны добавить на ваш взгляд, прежде чем ваш form.semantic_fields_for:

<% @user.build_profile unless @user.profile %> 

Вы можете сделать это, а также в вашем контроллере нового после этого вы создаете свой объект пользователя.