Изменение адаптера по умолчанию для сериализаторов активной модели

Если я захочу перейти с адаптера атрибутов по умолчанию на адаптер json api, где мне это сделать?

Начало работы гласит:

Вообще говоря, вы, как пользователь AMS, будете писать (или генерировать) эти классы сериализатора. Если вы хотите использовать другой адаптер, такой как JsonApi, вы можете изменить это в инициализаторе:

ActiveModel::Serializer.config.adapter = :json_api

К какому инициализатору они относятся? Я создаю новый? Извините за вопрос нуб

3 ответа

Решение

В общем, инициаторы ставятся под app/config/initializers каталог в приложении Rails.

Итак, в вашем случае вы можете создать новый файл там: ams.rb и поместите этот контент в этот файл:

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

Кроме того, посмотрите эту проблему GitHub.

Если вы хотите использовать :json_api формат, вы должны использовать 0.10.0 отделение от Github.

Для более новой версии AMS поместите это в config/initializers/ams.rb:

require 'active_model_serializers'

ActiveModelSerializers.config.adapter = :json_api

Создайте новый файл с любым именем внутри app/config/initializers/ и добавить:

ActiveModelSerializers.config.adapter = :json_api

Все файлы в каталоге инициализаторов запускаются во время инициализации независимо от имени файла.

Другие вопросы по тегам