From 6df1b186fb46018e3be4d75fdc4fd0f493666325 Mon Sep 17 00:00:00 2001 From: Melih Degis Date: Tue, 4 Dec 2018 18:45:11 +0300 Subject: [PATCH] Add FastJSONApi --- Gemfile | 1 + Gemfile.lock | 6 ++++++ app/controllers/api/v1/defaults.rb | 2 +- app/serializers/user_serializer.rb | 3 ++- 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/Gemfile b/Gemfile index 62d1ddb..572fccd 100644 --- a/Gemfile +++ b/Gemfile @@ -8,6 +8,7 @@ gem "grape" gem "grape-active_model_serializers" gem "grape-swagger" gem "grape-swagger-rails" +gem "grape_fast_jsonapi" gem "jbuilder", "~> 2.5" gem "pg", ">= 0.18", "< 2.0" gem "puma", "~> 3.11" diff --git a/Gemfile.lock b/Gemfile.lock index a3e9d88..2bdb741 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -112,6 +112,8 @@ GEM equalizer (0.0.11) erubi (1.7.1) execjs (2.7.0) + fast_jsonapi (1.5) + activesupport (>= 4.2) ffi (1.9.25) globalid (0.4.1) activesupport (>= 4.2.0) @@ -129,6 +131,9 @@ GEM grape (>= 0.16.2) grape-swagger-rails (0.3.0) railties (>= 3.2.12) + grape_fast_jsonapi (0.1.0) + fast_jsonapi + grape haml (5.0.4) temple (>= 0.8.0) tilt @@ -325,6 +330,7 @@ DEPENDENCIES grape-active_model_serializers grape-swagger grape-swagger-rails + grape_fast_jsonapi haml-lint jbuilder (~> 2.5) letter_opener_web diff --git a/app/controllers/api/v1/defaults.rb b/app/controllers/api/v1/defaults.rb index 4fd291a..a269b53 100644 --- a/app/controllers/api/v1/defaults.rb +++ b/app/controllers/api/v1/defaults.rb @@ -9,7 +9,7 @@ module Defaults default_format :json format :json formatter :json, - Grape::Formatter::ActiveModelSerializers + Grape::Formatter::FastJsonapi helpers do def permitted_params diff --git a/app/serializers/user_serializer.rb b/app/serializers/user_serializer.rb index f36062e..be477fd 100644 --- a/app/serializers/user_serializer.rb +++ b/app/serializers/user_serializer.rb @@ -1,4 +1,5 @@ -class UserSerializer < ActiveModel::Serializer +class UserSerializer + include FastJsonapi::ObjectSerializer attributes :id, :username, :email, :last_seen, :last_sign_in_ip, :sign_in_count, :created_at, :updated_at