mroths
October 15, 2008, 11:59pm
1
How do you deal with multiple objects in error_messages_for when one or
more may be nil?
For example:
<%= error_messages_for :object => [@account , @account.billing_detail ,
@account.mailing_address , @account.billing_address ] %>
Here, @account.billing_detail may be nil, and throw a NoMethodError.
Thanks,
Mark
mroths
October 16, 2008, 3:18am
2
Now, is @account a variable or a class? I could be way off in left
field, but it looks like your calling objects that should be from a
class. Variables should only be called by themselves typically.
On Oct 15, 3:59 pm, Mark R. [email protected]
mroths
October 16, 2008, 4:36am
3
@account is an instance of class Account.
Account has_one BillingDetail
Account has_one MailingAddress
Account has_one BillingAddress
My issue is how to deal with nil references on the has_one associations.
To my knowledge, the above syntax is the only way to deal with error
messages in a multi-model form. I could have also done this:
<%= error_messages_for :object => [@account , @billing_detail ,
@mailing_address , @billing_address ] %>
having set these class variables in the controller, but that does not
solve the nil issue.
Thanks,
Mark
mroths
October 16, 2008, 6:27am
4
Mark R. wrote:
How do you deal with multiple objects in error_messages_for when one or
more may be nil?
For example:
<%= error_messages_for :object => [@account , @account.billing_detail ,
@account.mailing_address , @account.billing_address ] %>
Here, @account.billing_detail may be nil, and throw a NoMethodError.
Thanks,
Mark
i don’t know why you are trying in this way
anyway try this
<%= error_messages_for :object => [@account , @account.billing_detail ,
@account.mailing_address , @account.billing_address ].compact %>
by
mokkai
mroths
October 16, 2008, 12:47pm
5
That worked! Thank you…had no idea you could do that…guess I should
learn more Ruby
anyway try this
<%= error_messages_for :object => [@account , @account.billing_detail ,
@account.mailing_address , @account.billing_address ].compact %>
by
mokkai