diff --git a/app/controllers/guests_controller.rb b/app/controllers/guests_controller.rb index 1d872fa..1b215eb 100644 --- a/app/controllers/guests_controller.rb +++ b/app/controllers/guests_controller.rb @@ -5,21 +5,22 @@ require 'csv' class GuestsController < ApplicationController + GUEST_PARAMS = { only: %i[id name status], include: { group: { only: %i[id name] } } }.freeze def index render json: Guest.includes(:group) .left_joins(:group) .order('groups.name' => :asc, name: :asc) - .as_json(only: %i[id name status], include: { group: { only: %i[id name] } }) + .as_json(GUEST_PARAMS) end def create - Guest.create!(guest_params) - render json: {}, status: :created + guest = Guest.create!(guest_params) + render json: guest.as_json(GUEST_PARAMS), status: :created end def update - Guest.find(params[:id]).update!(guest_params) - render json: {}, status: :ok + guest = Guest.find(params[:id]).update!(guest_params) + render json: guest.as_json(GUEST_PARAMS), status: :ok end def destroy diff --git a/app/serializers/serializable_guest.rb b/app/serializers/serializable_guest.rb index ee4bac1..9b062bf 100644 --- a/app/serializers/serializable_guest.rb +++ b/app/serializers/serializable_guest.rb @@ -5,16 +5,12 @@ class SerializableGuest < JSONAPI::Serializable::Resource type 'guest' - attributes :id, :group_id, :status + attributes :id, :status attribute :name do @object.name end - attribute :group_name do - @object.group.name - end - attribute :status do @object.status.capitalize end