# What is best practice to indicate exception/error in controller?

**URL:** <https://www.ruby-forum.com/t/what-is-best-practice-to-indicate-exception-error-in-controller/148585>\
**Category:** Rails\
**Created:** [September 15, 2008, 9:40am UTC](https://www.ruby-forum.com/t/what-is-best-practice-to-indicate-exception-error-in-controller/148585 "2008-09-15T09:40:43Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![arifb](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/3ec8ea/32.png) [@arifb](https://www.ruby-forum.com/u/arifb)\
**Post date:** [September 15, 2008, 9:40am UTC](https://www.ruby-forum.com/t/what-is-best-practice-to-indicate-exception-error-in-controller/148585/1 "2008-09-15T09:40:43Z")

</div>

Hi all,

Just getting familiar with rails and am performing some checks in a  
method within a controller. If the checks fail, I would like to  
indicate to the user a custom error message and stop the update (the  
method is updating a record in the model).

What are best practices to do this? I understand that for form  
validation I should be putting validation checks in the model however  
this is quite different. Should I be raising an exception?

Ideally, I would like to indicate the error to the user in a similar  
fashion as when a form validation fails.

Thanks!

---

<div class="post-metadata">

**Author:** ![arifb](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/3ec8ea/32.png) [@arifb](https://www.ruby-forum.com/u/arifb)\
**Post date:** [September 15, 2008, 11:43am UTC](https://www.ruby-forum.com/t/what-is-best-practice-to-indicate-exception-error-in-controller/148585/2 "2008-09-15T11:43:22Z")

</div>

I would say it depends on your coding style. I ignored exceptions for  
a long time and I am still not sure whether to use them or not (heard  
that stack traces are quite expensive). But i would say it comes down  
to a specific coding style. Some people prefer boolean conditions,  
others exceptions. For simple things I would for an if-condition as it  
does not break the execution of the application, while exception will  
stop the current flow and “goto” somewhere else in the code. I use  
them for global stuff like authentication and permission checks, not  
for in page stuff.  
But as a business master this is only what i learned… a professional  
might have a different opinion on that topic 😉

Max
