Ruby on rails 3 如何处理错误并发送错误以响应\u

Ruby on rails 3 如何处理错误并发送错误以响应\u,ruby-on-rails-3,error-handling,Ruby On Rails 3,Error Handling,我正在开发一个rails应用程序,目前只开发Web服务 在其中一个Web服务中,我收到一个包含大量用户信息的JSON,例如: "friends": [ { "name": "John", "age": "10", "country": "Ecuador" }, { "name": "Tom", "age": "15", "country": "USA" }, {

我正在开发一个rails应用程序,目前只开发Web服务

在其中一个Web服务中,我收到一个包含大量用户信息的JSON,例如:

"friends": [
    {
        "name": "John",
        "age": "10",
        "country": "Ecuador"
    },
    {
        "name": "Tom",
        "age": "15",
        "country": "USA"
    },
    {
        "name": "Mery",
        "age": "20",
        "country": "Mexico"
    }
] 
所以。。。在我的控制器中,我只是循环遍历每个“friends”并执行类似Friend.new的操作,我填充该对象上的字段,然后保存

但我的问题出现在向请求者发送响应时,有时这个过程可能会失败,因为验证失败或类似的事情。。。我该怎么处理?我只是开始…拯救…结束循环然后?我应该用什么发送给你?是否可以发送带有({:error=>“Validation problem”})的响应

处理这个问题的好方法是什么?有什么想法吗


谢谢大家

是的,如果出现问题,您可以使用respond\u with。例如,您可以转储无效对象的错误,并为此设置http状态代码

respond_with(@your_object.errors.messages, :status => :unprocessable_entity)

为了清楚起见,请尝试创建新的无效实例并保存它。然后将
errors
方法强制转换到此实例。

是的,但我将在同一个循环中保存许多对象,如何从循环外部知道哪个对象失败?