2010-03-26 3 views
2

J'ai cherché et essayé beaucoup, mais je ne peux pas l'accomplir comme je le veux .. alors voici mon problème.Utilisation de champs d'un modèle d'association (has_one) avec formtastic dans les rails

Mes modèles sont les suivants:

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 

À mon avis:

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

Mon problème est que quand je modifier une personne alors il me montre les données sur le profil. Je voudrais que les champs du profil même lors de la création d'un utilisateur sont affichés.

Merci beaucoup!

Répondre

5

Vous devez ajouter à votre avis avant votre form.semantic_fields_for:

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

Vous pouvez le faire aussi bien dans votre nouveau contrôleur après que vous créez votre objet utilisateur.

Questions connexes