ruby-on-rails – ActiveResource错误处理

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – ActiveResource错误处理前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我一直在寻找一段时间,但我还没有找到满意的答案.我有两个应用程序FrontApp和BackApp. FrontApp具有模仿BackApp中的模型的活动资源.所有的模型级验证都生活在BackApp中,我需要在FrontApp中处理这些BackApp验证.

我有以下活动资源代码

  1. class RemoteUser < ActiveResource::Base
  2. self.site = SITE
  3. self.format = :json
  4. self.element_name = "user"
  5. end

这模拟了一个如下的模型

  1. class User < ActiveRecord::Base
  2.  
  3. attr_accessor :username,:password
  4.  
  5. validates_presence_of :username
  6. validates_presence_of :password
  7. end

每当我在前端应用程序中创建一个新的RemoteUser;我打电话给它.例如:

  1. user = RemoteSession.new(:username => "user",:password => "")
  2. user.save

但是,由于密码为空,因此我需要将错误从BackApp传回给FrontApp.这没有发生.我只是不明白如何做到这一点.这必须是一个通用的集成方案;但似乎没有一个很好的文档呢?

我作为代理人的安定的控制人如下:

  1. class UsersController < ActionController::Base
  2. def create
  3. respond_to do |format|
  4. format.json do
  5. user = User.new(:username => params[:username],:password => params[:password])
  6. if user.save
  7. render :json => user
  8. else
  9. render :json => user.errors,:status => :unprocessable_entity
  10. end
  11. end
  12. end
  13. end
  14. end

我失踪了什么?任何帮助将不胜感激.

干杯

解决方法

从rails源代码我发现ActiveResource没有得到错误的原因是因为我没有在json中为“errors”标签分配错误.它没有文件,但需要.

猜你在找的Ruby相关文章