如何使用active_model_serializers默认包含所有属性并过滤它们?

时间:2013-03-09 01:00:01

标签: ruby-on-rails active-model-serializers

我正在使用active_model_serializers,并希望找到一种方法来默认包含所有模型的属性,然后使用类似的东西

       exclude :date_created, :first_name

指定我不需要的那些。

到目前为止,我没有找到一种方法来指定除文档中的属性之外的导出属性,并且通过枚举所有需要的属性来完成:

       attributes :title, :body

1 个答案:

答案 0 :(得分:8)

您可以在模型序列化器上执行类似的操作(以User作为模型的示例):

class UserSerializer < ApplicationModelSerializer
   attributes(*User.attribute_names.map(&:to_sym))
end

有关ActiveRecord属性名称的更多信息,请访问:http://apidock.com/rails/ActiveRecord/AttributeMethods/attribute_names