Ember.js 余烬数据中验证错误的预期格式(使用ActiveModel::Serializers)

Ember.js 余烬数据中验证错误的预期格式(使用ActiveModel::Serializers),ember.js,ember-data,active-model-serializers,Ember.js,Ember Data,Active Model Serializers,不幸的是,ActiveModel::Serializer当前不支持验证错误,尽管它们被安排为。在那之前,我必须找到自己的解决方案。大问题是什么?我不知道Ember数据的ActiveModelAdapter希望这些错误采用什么格式。我试着简单地传入errors属性,但是余烬数据没有从中获取: class MySerializer < ActiveModel::Serializer attributes :errors end class MySerializer

不幸的是,ActiveModel::Serializer当前不支持验证错误,尽管它们被安排为。在那之前,我必须找到自己的解决方案。大问题是什么?我不知道Ember数据的ActiveModelAdapter希望这些错误采用什么格式。我试着简单地传入
errors
属性,但是余烬数据没有从中获取:

class MySerializer < ActiveModel::Serializer
  attributes :errors
end
class MySerializer

那么我应该传递什么呢?

我使用此方法来呈现验证错误(请注意,您根本不使用序列化程序):

您可以这样使用它:

def create
  model = Model.new model_params
  if model.save
    respond_with model
  else
    render_validation_errors model.errors
  end
end
ActiveModelAdapter所需的格式为:

{"errors":{"title":"should begin with a capital letter"}}

我使用此方法呈现验证错误(请注意,您根本不使用序列化程序):

您可以这样使用它:

def create
  model = Model.new model_params
  if model.save
    respond_with model
  else
    render_validation_errors model.errors
  end
end
ActiveModelAdapter所需的格式为:

{"errors":{"title":"should begin with a capital letter"}}

谢谢,亚历克斯。你不知道我花了多少时间想弄明白。对于其他人,如果您未定义
to_h
,请尝试
to_hash
。我不知道为什么它会失败,它应该在Ruby 2.0中得到支持。谢谢,Alex。你不知道我花了多少时间想弄明白。对于其他人,如果您未定义
to_h
,请尝试
to_hash
。我不知道为什么它会失败,它应该在Ruby 2.0中得到支持。