gpt4 book ai didi

ruby-on-rails - Rails API 事件模型序列化器根节点不工作

转载 作者:行者123 更新时间:2023-12-02 00:52:14 26 4
gpt4 key购买 nike

我有一个 rails 4.2.5 API 应用程序。出于某种原因,JSON 根节点未包含在响应中,我不明白为什么。

curl  http://localhost:3000/api/v1/category/science

返回

{"title":"science","sub_categories":34}%

代替

{"category": {"title":"science","sub_categories":34}%}

代码:

Controller

class Api::V1::CategoryController < ApplicationController
def show
category = params[:category] || "sports"
@category = Category.where(cat_title: category.capitalize).first
respond_to do |format|
format.json { render json: @category, serializer: CategorySerializer, root: "category" }
end
end
end

序列化器

class CategorySerializer < ActiveModel::Serializer
attributes :title, :sub_categories

def title
URI::encode(object.cat_title.force_encoding("ISO-8859-1").encode("utf-8", replace: nil).downcase.tr(" ", "_"))
end

def sub_categories
object.cat_subcats
end
end

最佳答案

查看您的初始化器,这应该在 wrap_paramters.rb 中注释掉:

# To enable root element in JSON for ActiveRecord objects.
# ActiveSupport.on_load(:active_record) do
# self.include_root_in_json = true
# end

关于ruby-on-rails - Rails API 事件模型序列化器根节点不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38804164/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com