Rails - 查询数据库,不显示错误

时间:2012-07-29 15:16:15

标签: ruby-on-rails ruby-on-rails-3

我有一个Notifications表,该表使用url参数hash提供的ID进行查询。

说我有以下网址:videos/11?notification=5

5映射到通知。但请说用户更改5的{​​{1}}并提交该网址。如果不存在ID为7的通知,则Rails会发送错误消息7。我希望它只是忽略错误并继续。我在发现之后做了一些测试,所以不会发生任何不必要的事情。

2 个答案:

答案 0 :(得分:3)

在您的控制器中,您可能正在使用Notification.find。如果找不到具有给定id的记录,则会抛出错误。如果找不到记录,finder方法Notification.find_by_id将不会抛出异常,而是返回nil

答案 1 :(得分:2)

你可以这样做:

Notification.find_by_id 7

如果没有id为7的记录,它将返回nil。