我在Rails項目中使用ActiveModel串行器。使用ActiveModel Serializer呈現對象的子集
對象的默認序列化程序相當大,並且在API響應中嵌套對象會導致相當大的JSON對象。
有時,我想嵌入一個對象,但只需要JSON中存在的對象屬性的一小部分。
很顯然,我可以做這樣的事情:
render json: @user, serializer: SmallerUserSerializer
但這樣會導致大量的重複。
是否有一個選項可以傳遞給序列化程序,以便它只包含序列化程序屬性的子集?例如:
class BlogSerializer # This is pseudocode. Does not actually work. has_one :user, only_show: [:user_id, :profile_url] end