# Update + validation error

**URL:** <https://www.ruby-forum.com/t/update-validation-error/160024>\
**Category:** Rails\
**Created:** [February 11, 2009, 3:13am UTC](https://www.ruby-forum.com/t/update-validation-error/160024 "2009-02-11T03:13:02Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![mpathare](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/9fc29f/32.png) [@mpathare](https://www.ruby-forum.com/u/mpathare)\
**Post date:** [February 11, 2009, 3:13am UTC](https://www.ruby-forum.com/t/update-validation-error/160024/1 "2009-02-11T03:13:02Z")

</div>

I have a Player model with some validations. I am using a partial form  
to create and update player info. I have the following like in the view

\<%= error\_messages\_for ‘player’ %\>

On create the validation errors are correctly displayed, but if a  
validation error fails update, I get an ugly stack trace error that  
looks like this

validation failed: Last name can’t be blank

RAILS\_ROOT: /home/maulin/projects/sports\_ladder  
Application Trace | Framework Trace | Full Trace

/usr/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active\_record/validations.rb:1021:in  
`save_without_dirty!' /usr/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/dirty.rb:87:in`save\_without\_transactions!’  
/usr/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active\_record/transactions.rb:150:in  
`save!' /usr/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/connection_adapters/abstract/database_statements.rb:66:in`transaction’  
/usr/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active\_record/transactions.rb:129:in  
`transaction' /usr/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/transactions.rb:138:in`transaction’  
/usr/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active\_record/transactions.rb:150:in  
`save!' /usr/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/transactions.rb:158:in`rollback\_active\_record\_state!’  
/usr/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active\_record/transactions.rb:150:in  
`save!' /usr/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/base.rb:2476:in`update\_attributes!’  
app/controllers/players\_controller.rb:41:in `update’

why aren’t the validation erros being displayed nicely on update?

---

<div class="post-metadata">

**Author:** ![mpathare](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/9fc29f/32.png) [@mpathare](https://www.ruby-forum.com/u/mpathare)\
**Post date:** [February 11, 2009, 3:29am UTC](https://www.ruby-forum.com/t/update-validation-error/160024/2 "2009-02-11T03:29:25Z")

</div>

> why aren’t the validation erros being displayed nicely on update?

I was able to figure this out…If the record was not successfully  
audated because of a validation error, I needed to render :action =\>  
:edit.

It now shows the errors nicely.

---

<div class="post-metadata">

**Author:** ![mpathare](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/9fc29f/32.png) [@mpathare](https://www.ruby-forum.com/u/mpathare)\
**Post date:** [February 11, 2009, 4:11am UTC](https://www.ruby-forum.com/t/update-validation-error/160024/3 "2009-02-11T04:11:42Z")

</div>

I think this is a good example of how we should behave on a mailing  
list…  
too many people figure out an answer and never respond back 🙂 Thanks

On Tue, Feb 10, 2009 at 9:29 PM, Maulin pa  
\<removed\_email\_address@domain.invalid
