[英]Rails JSON API serializer with custom attributes
我正在使用 ruby-2.5.0 和 rails 5 開發一個 RoR 項目。我正在為我的 API 使用jsonapi-serializers
。 我想自定義關聯的model的屬性。 我有兩個模型 Receipt 和ReceiptPartial
。 收據has_many:receipt_partials
。 當我在序列化程序中編寫has_many:receipt_partials
時,它會返回所有列,但我只需要幾列。
class ReceiptPartialSerializer
include JSONAPI::Serializer
TYPE = 'receipt'
attribute :id
has_many :receipt_partials
end
我想限制receipt_partials 的列。 我也試過has_many:receipt_partials, only: ['id']
但沒有用。 我怎樣才能做到這一點? 請幫忙。 提前致謝。
根據文檔,您應該簡單地指定相關序列化程序 class 上的屬性,例如,如果您想在ReceiptPartial
Serializer 中顯示 id 和 name 屬性,您可以執行以下操作。
class BaseSerializer
include JSONAPI::Serializer
end
class ReceiptSerializer < BaseSerializer
TYPE = 'receipt'
attribute :id
has_many : receipt_partials
end
class ReceiptPartialSerializer < BaseSerializer
attributes :id, :name
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.