On May 6, 10:42 pm, Mauro <[email protected]> wrote:
> class Shop < ActiveRecord::Base
> has_many :documents
> validates :name, :presence => true
> accepts_nested_attributes_for :documents
>
> class Document < ActiveRecord::Base
> belongs_to :shop
> validates :reference_number, :presence => true
>
So your shop starts out as a brand new shop on in the new action, with
0 shops.
The new form gets rendered,
> The partial _form for shop is:
>
> - @shop.documents.build
the shop now has 1 document. You then submit the form, which creates a
shop with one document, (albeit with errors). because there are
errors, you render the form, and since the form unconditionally does
@shop.documents.build, a second document is created.
If I were you I'd be calling that in the controller, and only when
desirable
Fred
> = simple_form_for(@shop) do |shop_f|
> = render 'shared/error_messages', :object => @shop
>
> = render :partial => 'documents/form', :locals => { :form => shop_f }
>
> = field_set_tag t('shop') do
> .inputs
> = shop_f.input :role_number
> = shop_f.input :role_date
> = shop_f.input :name
>
> the partial _form for document is:
>
> = form.simple_fields_for :documents do |document_f|
> = field_set_tag t('document') do
> .inputs
> = document_f.input :reference_number
>
> When I submit the form with no values in shop name or document
> reference_number I have the errors messages and it is correct but in
> the page I have the shop form with two document form.
> Why the two document forms?
> Sorry for my bad english hope my problem is clear.
--
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.