Ruby on rails Rails 6 fastjson错误MandatoryField异常:id是jsonapi规范中的必填字段
我正在使用Fastjson序列化程序gem处理Rails6API 获取MandatoryField异常:id是jsonapi规范错误中的必填字段Ruby on rails Rails 6 fastjson错误MandatoryField异常:id是jsonapi规范中的必填字段,ruby-on-rails,serialization,rails-api,Ruby On Rails,Serialization,Rails Api,我正在使用Fastjson序列化程序gem处理Rails6API 获取MandatoryField异常:id是jsonapi规范错误中的必填字段 def get_payment_report if params[:duration].present? payment = Hash.new date_range = Invoice.get_date_range(params[:duration], DateTime.now.in_time_zone(@timezone)) in
def get_payment_report
if params[:duration].present?
payment = Hash.new
date_range = Invoice.get_date_range(params[:duration], DateTime.now.in_time_zone(@timezone))
invoiced_amount = Invoice.invoiced_report_calculation(params[:duration], date_range) if date_range.present?
payment['invoiced_amount'] = invoiced_amount[0]
payment['total_invoiced_amount'] = invoiced_amount[1]
payment_report = DashboardPaymentReportSerializer.new(payment)
success_response_with_obj(payment_report.serializable_hash[:data].map{ |data| data[:attributes]})
end
end
付款报告对象值
#<DashboardPaymentReportSerializer:0x00007fee1caefb48 @fieldsets={}, @params={},
@resource={"invoiced_amount"=>{"Jan 2020"=>0.14267609e6, "Feb 2020"=>0.1081994e6, "Mar 2020"=>0.8739835e5, "Apr 2020"=>0.839002e4, "May 2020"=>0.12127e5, "Jun 2020"=>0.4563784e5,
"Jul 2020"=>0.332564e4, "Aug 2020"=>0.330587796e7, "Sep 2020"=>0.68637564e6,
"Oct 2020"=>0.6382326e6, "Nov 2020"=>0.285e3, "Dec 2020"=>0}, "total_invoiced_amount"=>24694915}>
谢谢
class DashboardPaymentReportSerializer
include FastJsonapi::ObjectSerializer
attributes :invoiced_amount, :total_invoiced_amount
end