Ich bin mit dem Anzeigeformat der JSON-Antwort nicht vertraut Ich blieb stecken und organisierte es.
ActiveModelSerializer verfügt über drei Arten von Adaptern (JSON-Anzeigeformat).
Attribute: Adapter standardmäßig eingestellt. Generieren Sie eine JSON-Antwort ohne Root-Schlüssel. json: Die Antwort hat immer einen Stammschlüssel und generiert eine json-Antwort json_api: Eine Antwort wird gemäß dem von der Organisation festgelegten Anzeigeformat zurückgegeben, das die JSON-Spezifikationen bestimmt, die als JSON-API bezeichnet werden.
Wenn Sie standardmäßig: json und: json_api verwenden möchten, wechseln Sie in das Verzeichnis initializers Erstellen Sie eine separate Datei wie active_model_serializers.rb (jeder Name ist in Ordnung) und
# config/initializers/active_model_serializers.rb
ActiveModel::Serializer.config.adapter = :json_api
Die tatsächliche Antwort sieht so aus
[
{"id"=>69,
"title"=>"Topf",
"updated_at"=>"2020-10-20T20:52:09.044Z",
"user"=>
{"id"=>3,
"name"=>"xu6i65h83tbvexx5dld89w39xn4u9",
"email"=>"[email protected]"}
}
]
"Artikel" ist der Stammschlüssel. Der Name des Stammschlüssels erhält den Namen des Controllers.
{"articles"=>
[
{"id"=>72,
"title"=>"Oh ja",
"updated_at"=>"2020-10-20T20:58:15.458Z",
"user"=>
{"id"=>3,
"name"=>"e8zu6a5m08jlgd3w1ddlxkoa",
"email"=>"[email protected]"}
},
]
}
{"data"=>
[
{"id"=>"66",
"type"=>"articles",
"attributes"=>{"title"=>"Hinkyaku", "updated-at"=>"2020-10-20T20:44:16.765Z"},
"relationships"=>
{"user"=>
{"data"=>
{"id"=>"3",
"type"=>"users"}
}
}
}
]
}
Es fühlt sich an, als würde es immer strukturierter. Die Tatsache, dass json_api ein Anzeigeformat ist, das den JSON-Spezifikationen entspricht Ist es am einfachsten zu verallgemeinern?
Recommended Posts