我试图用调用返回多个对象:

def index
    beers = Beer.all
    micros = Micros.all
    render json: {beers: beers, micro: micros}
end

但是,对于这两个对象,只返回受尊敬的序列化程序中列出的属性,而不是受尊敬的序列化程序中has_many、belongs_to等关系中的任何一个。
如果我只想返回一个对象,例如:
def index
    beers = Beer.all
    render json: beers
end

然后它可以正常工作并返回序列化程序中列出的所有关系。
如何修复使用多个对象返回序列化程序中的所有内容(而不仅仅是属性)的调用?

最佳答案

希望能帮助你

def index
  @beers = Beer.all
  @micros = Micros.all

  render json: {
     beers: ActiveModel::Serializer::CollectionSerializer.new(@beers, each_serializer: BeerSerializer),
     micros: ActiveModel::Serializer::CollectionSerializer.new(@micros, each_serializer: MicroSerializer),
  }
end

10-06 15:50