Я искал какое-то время, и пока я пока не могу найти удовлетворительный ответ. У меня есть два приложения. FrontApp и BackApp. FrontApp имеет активный ресурс, который имитирует модель в BackApp. Все проверки уровня модели живут в BackApp, и мне нужно обрабатывать эти проверки BackApp в FrontApp.Обработка ошибок ActiveResource
Я следующий код активного ресурса:
class RemoteUser < ActiveResource::Base
self.site = SITE
self.format = :json
self.element_name = "user"
end
Это имитирует модель, которая выглядит следующим образом
class User < ActiveRecord::Base
attr_accessor :username, :password
validates_presence_of :username
validates_presence_of :password
end
Всякий раз, когда я создаю новый RemoteUSER в передней приложения; Я звоню на него. например:
user = RemoteSession.new(:username => "user", :password => "")
user.save
Однако, поскольку пароль пустой, мне нужно передать обратно ошибки в FrontApp от BackApp. Этого не происходит. Я просто не понимаю, как это сделать. Это должен быть общий сценарий интеграции; но, похоже, для этого нет хорошей документации?
Мой успокоительные контроллер, который действует как прокси-сервер выглядит следующим образом:
class UsersController < ActionController::Base
def create
respond_to do |format|
format.json do
user = User.new(:username => params[:username], :password => params[:password])
if user.save
render :json => user
else
render :json => user.errors, :status => :unprocessable_entity
end
end
end
end
end
Что это такое, что мне не хватает? Любая помощь будет высоко ценится.
Приветствия
'format.json {render: json => {: errors => @ customer.errors},: status =>: unprocessable_entity}' ----> Это сработает ..... У меня также была такая же проблема, потому что Я использовал код, как @ customer.errors.full_messages, он не присваивает и не возвращает приложение активного ресурса –