【问题标题】:Disable root in active model serializers在活动模型序列化程序中禁用 root
【发布时间】:2017-01-14 06:45:31
【问题描述】:
我正在使用带有 :json 适配器的活动模型序列化程序(0.10.2),因为在两个序列化程序中我需要元标记(元标记不包含在 :attributes 适配器中),我不需要更多的序列化程序root,是否可以禁用每个序列化程序的 root?
是否可以在活动模型序列化程序 v 0.10.2 中使用 :json 适配器并禁用 root?
【问题讨论】:
标签:
ruby-on-rails
json
ruby
active-model-serializers
【解决方案1】:
在使用 :json 适配器时,我找不到禁用根键的方法。但是,听起来你想让一些控制器方法返回元数据,而其他控制器方法不返回元数据,所以你可以对没有元数据的方法使用默认适配器(属性),然后只在 :json 上声明适配器需要元数据的控制器方法。
所以,类似:
render json: articles, meta: articles_meta_method(articles), adapter: :json
当然,articles_meta_method 必须在某个地方定义。
有一个使用元方法进行分页的例子here