【发布时间】:2017-11-19 17:58:20
【问题描述】:
我正在尝试让我的应用以小写驼峰形式返回,以便最终格式化 JSON API。
我已安装 gem 'active_model_serializers' 并创建了一个新的初始化程序,其中包含以下代码:
ActiveModelSerializers.config.adapter = :json_api
ActiveModelSerializers.config.key_transform = :camel_lower
然后我有一个返回 json 的小 API,就像所有最好的互联网应用程序一样:
class Api::V1::UsersController < API::V1::BaseController
def sky
@user = User.find_by_id(params[:user_id])
if @user
obj = {
sky: {
sectors: @user.sectors,
slots: @user.slots
}
}
render json: obj
else
raise "Unable to get Sky"
end
end
有关 API 控制器继承模式的更多信息:class API::V1::BaseController < ActionController::Base
问题
在我的 API 响应中,事情仍然是蛇形的,我在控制台 [active_model_serializers] Rendered ActiveModel::Serializer::Null 中看到了这个错误,但我的研究让我陷入了死胡同。
非常欢迎任何建议。谢谢!
【问题讨论】:
-
这是一个 rails 应用程序,不是 rails-api 应用程序,fwiw
标签: ruby-on-rails active-model-serializers json-api