Как организовать сериализаторы с помощью fastjsonapi.? - PullRequest
0 голосов
/ 11 декабря 2019

Мое приложение имеет следующие версии: rails 6.0.0, ruby 2.6.3.

У меня около 20 контроллеров в приложении, и мы планируем использовать fast-json-api вместо rabl в качестве сериализатора в приложении,Я обнаружил, что количество файлов сериализатора растет очень быстро для каждого контроллера. (скриншот ниже).


Вопросы

Есть ли лучший способ организовать все сериализаторы?

Я пробовал следующие 2 способа организации:

  1. Организация всех сериализаторов одного контроллера под его именем модели (например, rabl)

    serializer

    Но это даломне эта ошибка:
    NameError (uninitialized constant Api::V1::LexiconsController::ListNodeSerializer)

  2. Могу ли я отрисовывать различные представления API в одном Serializer, сохраняя все SerializerClassNames в одном файле serialzer для этого контроллера ??

    Сериализатор для контроллера категории

    class ShowSerializer < ApplicationSerializer
      cache_options enabled: true, cache_length: 24.hours

      attributes :name, :status, :description
    end

    class IndexSerializer < ApplicationSerializer
      attributes :name, :status, :thumbnail, :definition

      attributes :area do |area|
        area.country.try(:name).try(:html_safe)
      end
    end
...