Ruby on rails exception raised by find_by_sql()
我在我的控制器中使用find_by_sql()方法,如何处理使用此方法执行sql查询引发的异常?
你的问题有点模糊,但我试着提供一些信息。
Rails只是Ruby,所以学习如何处理Ruby中的异常是关键,我建议
- 文件
- 务实的程序员
- Ruby学习
一旦你完成了它,它坦率地取决于你的应用程序,我会说你不应该在控制器中处理它,并且一个类或(有点丑陋的)模型应该这样做,因为它们应该具有Buisness Logic。
作为旁注,您应该考虑是否可以使用异常,Ruby,因为许多动态语言可以很容易地检查值,因此您可以避免提高它。
最后,如果您只是想知道如何做到这一点:
1 2 3 4 5 6 7 8 9 10 11 | begin # find_by_sql rescue ActiveRecord::RecordNotFound # handle not found error rescue ActiveRecord::ActiveRecordError # handle other ActiveRecord errors rescue # StandardError # handle most other errors rescue Exception # handle everything else end |
或控制器中的
从这个答案。
希望在某种程度上有所帮助。