0

私はRepositoryBranchの2つのモデルを持っています。どちらも対応するシリアライザがあります。ActiveModelでの関連付けを無効にするシリアライザ - シリアル化されたオブジェクト属性の代わりにすべての属性を返します

RepositorySerializerには、1つのデフォルトブランチをリストしたいと思います。ここで私はそれをやっている方法は次のとおりです。

attributes :id, :name, :ssh_url, :default_branch 
has_many :branches 

def default_branch 
    object.branches.find_by_name(object.default_branch) 
end 

BranchSerializerでは、私が持っている:

attributes :id, :name 

branches戻っ適切にシリアライズされたとだけidname属性を含むすべてのブランチが、default_branch戻ってそのすべての属性をブランチ。

この場合、既存のBranchSerializerを利用する方法はありませんか、それとも、方法default_branchから必要な属性を返してください。

ご協力いただければ幸いです。

答えて

1

あなたは属性としてdefault_branchをシリアル化しているので、BranchSerializerがでキックしません。 が追加

has_one :default_branch do 
    object.branches.find_by_name(object.default_branch) 
    end 
関連する問題