13

Wenn ich vom Standardattributadapter zum json API-Adapter wechseln möchte, wo würde ich das tun?Ändern von aktiven Modell-Serializern Standard-Adapter

der Begleit-Staaten dies:

Im Allgemeinen Sie als Nutzer von AMS schreibt (oder zu generieren), um diese Serializer Klassen. Wenn Sie einen anderen Adapter, wie ein JsonApi verwenden möchten, können Sie dies in einem initializer ändern:

ActiveModel::Serializer.config.adapter = :json_api 

Welche initializer sind sie beziehen? Erstelle ich einen neuen? Entschuldigung für die Noob-Frage

Antwort

12

Im Allgemeinen werden Initialisierungen unter dem Verzeichnis app/config/initializers in einer Rails-App abgelegt.

Also, in Ihrem Fall, können Sie eine neue Datei erstellen dort: ams.rb und jene Inhalte in dieser Datei setzen:

# app/config/initializers/ams.rb  
ActiveModel::Serializer.config.adapter = :json_api 

Auch diese github issue sehen. Wenn Sie das Format :json_api verwenden möchten, müssen Sie den Zweig 0.10.0 von Github verwenden.

+0

Hey vielen Dank für die Antwort. Also habe ich das früher versucht und bekomme eine undefinierte Methode 'config 'für ActiveModel :: Serializer: Class ... fehle ich einen Schritt beim Erstellen der Initialisierungsdatei? – Jshoe523

+0

Welche Version von AMS verwenden Sie? –

+0

Siehe: https://github.com/rails-api/active_model_serializers/issues/803 'Wenn Sie das Format: json_api verwenden möchten, müssen Sie den Zweig 0.10.0 von Github verwenden. –

5

Für neuere Version von AMS setzen, dies zu config/initializers/ams.rb:

require 'active_model_serializers' 

ActiveModelSerializers.config.adapter = :json_api 
+0

Dank dem Neustart sollte es sein, in die Dokumente. – jitowix

+0

nicht initialisierte Konstante ActiveModelSerializers (NameError), ich habe setzen 'active_model_serializers' ActiveModelSerializers.config.adapter =: json_api in config/initializers/ams.rb, werfen über Fehler beim Neustart von Rails Server – kamal

0

Erstellen Sie eine neue Datei mit einem beliebigen Namen in app/config/initializers/ und fügen:

ActiveModelSerializers.config.adapter = :json_api 

Alle Dateien unter initalizers Verzeichnis Lauf während der Initialisierung unabhängig des Dateinamens.

Verwandte Themen