В проекте Rails API я добавил этот гем для возврата json
gem 'jsonapi-serializer'
Это модели, которые я определил, все самые основные вещи.
class UserSequel < Sequel::Model(:users)
end
class User < ActiveRecord::Base
end
Я создал класс сериализатора
class UserSerializer
include FastJsonapi::ObjectSerializer
attributes :text
end
Теперь к вопросу
# Using ActiveRecord model returns some json as expected
UserSerializer.new(User.first).serializable_hash.to_json
Однако следующее...
# Using Sequel model
UserSerializer.new(UserSequel.first).serializable_hash.to_json
возвращает это сообщение об ошибке
FastJsonapi::MandatoryField (идентификатор является обязательным полем в спецификации jsonapi)
Я не совсем понимаю, почему это происходит, потому что, очевидно, модель Sequel содержит столбец id
, и вызов этого возвращает ожидаемый результат.
UserSequel.first.id
# => 1