Please ignore my post, I discovered what the problem was. I had been
manually adding errors to the order object from the validations of
another model (active merchant's credit card class), and my mistake
was that I had added the errors directly, but the errors for each
attribute are an array of errors, so instead I just need to loop
through them and they add them to my order object using the errors.add
method. Just in case anyone else runs into a similar problem.

sean


On Oct 7, 10:30 am, "[email protected]" <[email protected]>
wrote:
> Hi,
>
> I was wondering if it is possible to output validation errors in a
> nested form? I suppose this should be possible, but I am experiencing
> an error message that I can't track down.
>
> The error I get is the following :
>  TypeError in Store/orders#create
> Showing app/views/store/orders/new.html.erb where line #45 raised:
> can't convert Array into String
>
> This is ocurring in the following view code:
> <% form_for :order, @order, :url => store_orders_url, :html => {:class
> => "myform"} do |order_form| %>
>         <%= order_form.error_messages %>
>
> I can't understand why this would be ocurring, because I was able to
> inspect the errors object for @order in the log, and it seems normal
> to me, I don't know why it cause errors in outputting errors to the
> view for this object. Here is the output of the inspect method:
>
> errors object #<ActiveRecord::Errors:0x105c343c0 @errors=
> {"customer_billing_state"=>["must be present"], "card_number"=>[["is
> not a valid credit card number"]], "customer_select_state"=>["^State/
> Province must be a U.S. state selected from the drop down list for
> customers in United States"], "card_verifiation"=>[["is required"]]},
> @base=#<Order id: nil, created_at: nil, updated_at: nil, customer_id:
> nil, gst: #<BigDecimal:105d342c0,'0.0',9(18)>, qst: #<BigDecimal:
> 105d33ed8,'0.0',9(18)>, shipping_ca: #<BigDecimal:105d33ac8,'0.0',9(18)>, 
> shipping_us: #<BigDecimal:105bfb840,'0.7E1',9(18)>, currency:
>
> "USD", status: nil, comments: nil, customer_ip: "127.0.0.1",
> payment_method: "Credit Card", downloaded: nil, express_token: nil,
> express_payer_id: nil, card_type: "visa", card_expires_on:
> "2009-10-01">>
>
> If anyone has any idea where I can start looking to debug this error,
> I would appreciated it very much.
>
> Thanks,
> Sean
--~--~---------~--~----~------------~-------~--~----~
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