class AdminAPI::AdminController

Attributes

class_name[RW]
complete_serializer[RW]
permit_params[RW]
short_serializer[RW]

Public Instance Methods

create() click to toggle source
# File lib/admin-api.rb, line 44
def create
  item = @class.new create_params
  if @complete_serializer
    render json: item, serializer: @complete_serializer
  else
    render json:item
  end
end
destroy() click to toggle source
# File lib/admin-api.rb, line 71
def destroy
  @class_name.where(id: params[:id]).destroy_all
  render nothing: true
end
index() click to toggle source
# File lib/admin-api.rb, line 52
def index
  if @short_serializer
    render json: @class_name.all, each_serializer: @short_serializer
  else
    render json: @class.all
  end
end
update() click to toggle source
# File lib/admin-api.rb, line 59
def update
  item = @class.find params[:id]
  if item.update(create_params)
    if @complete_serializer
      render json: item, serializer: @complete_serializer
    else
      render json:item
    end
  else
    render json: item.errors, status: :bad_request
  end
end

Private Instance Methods

create_params() click to toggle source
# File lib/admin-api.rb, line 76
def create_params
  params.require(@class.name).permit(@permit_params)
end