Hi All,

I'm trying to learn Ruby on Rails and have got an issue with the
validation of a nested form. I think I have got it setup correctly as it
appears to be saving the data as expected, but it is not wrapping the
CSS class (field_with_errors) to the fields, and if data is entered into
the nested fields it disappears on form submit (if there are validation
errors). The validation messages are being displayed correctly.

Here are the relevant bits of code (some of the forms have been
ommitted) - I am hoping somebody more experienced will be able to spot
where I have gone wrong!

/app/models/user.rb

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

/app/models/feature.rb

class Feature < ActiveRecord::Base
  belongs_to :user
  validates :profile, :hobbies, :presence => true
end

/app/views/users/_form.html.erb

<% @user.build_feature %>
<%= form_for @user, :url => { :controller => :users, :action => "create"
} do |user| %>

<%= user.text_field :email %>

<%= render :partial => 'features/form',
  :locals => { :form => user } %>

/app/views/features/_form.html.erb

<%= form.fields_for :feature do |f| %>
<%= f.text_area :profile %>


Debugging @user.errors shows the subform items are being outputted as
follows:

:"feature.profile": can't be blank

Wheras the other form shows the error messages being output:

:first_name: can't be blank


I've googled this issue but haven't found anything that has worked -
would appreciate any help!

Thanks

-- 
Posted via http://www.ruby-forum.com/.

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en.

Reply via email to