Изменение адаптера по умолчанию для сериализаторов активной модели
Если я захочу перейти с адаптера атрибутов по умолчанию на адаптер 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
Все файлы в каталоге инициализаторов запускаются во время инициализации независимо от имени файла.