2016-06-07 8 views
0

Wenn ich ein Modellobjekt zu JSON serialisiert, möchte ich alle IDs in Zeichenfolgen konvertieren, da sie in JavaScript "Backbox" -Werte sein sollten und keine Gleitkommazahlen mit doppelter Genauigkeit. Gibt es eine Möglichkeit zu sagen ActiveModel::Serializer, um alle IDs über .to_s (wenn nicht NULL) auszuführen?ActiveModel :: Serializer: Konvertieren von IDs in Zeichenfolgen

Ich habe bereits versucht, eine BaseSerializer Klasse zu machen, die eine benutzerdefinierte id Methode definiert, von der alle anderen Serialisierer erben. Diese Methode führt die entsprechende Umwandlung in eine Zeichenfolge durch, sie wird jedoch z. belongs_to Relation, in der nur die IDs gerendert werden (aufgrund der JSON-Schachtelungstiefe).

Antwort

0

Bitte versuchen Sie dies ....

Ich habe ein Serializer wie die

class ResumesSerializer < ActiveModel::Serializer 
    attributes :first_name, :last_name, :age 

    def age 
    object.talent.age.to_s if object.talent.age.present? 
    end 
end 
+0

Also muss ich dies jedem für tun Beziehung ich überall in unserer App haben? Auch dies wird immer das Alter aussenden, auch wenn die Nisttiefe normalerweise dazu führen würde, es wegzulassen. – panzi

+0

Ja, Sie müssen dies nur für das Attribut customize tun. –

Verwandte Themen