diff --git a/app/controllers/concerns/paginator.rb b/app/controllers/concerns/paginator.rb index 305e5d82e0669029c94ffec8e5976f8263cccc0d..6d43c864ec23abb2abf307355e7b25e57d16df47 100644 --- a/app/controllers/concerns/paginator.rb +++ b/app/controllers/concerns/paginator.rb @@ -30,7 +30,7 @@ module Paginator def limit return params[:limit].to_i if !params[:limit].blank? - return (offset + params[:results_per_page].to_i - 1) if !params[:results_per_page].blank? + return params[:results_per_page].to_i if !params[:results_per_page].blank? return 12 end diff --git a/app/controllers/v1/search_controller.rb b/app/controllers/v1/search_controller.rb index 824fdef67fd2ee6dead8756e06e72f7cddf01d1b..4fb417204753b8cef74d9a4a5cc9683ff44c91f9 100644 --- a/app/controllers/v1/search_controller.rb +++ b/app/controllers/v1/search_controller.rb @@ -44,8 +44,13 @@ class V1::SearchController < ApplicationController # GET v1/search/tag # GET v1/search/tag.json def tag - results = TagSearchService.search(Tag.find(tag_search_params[:id])) - render json: paginate(results) + t = Tag.find_by_name(tag_search_params[:name]) + if t.nil? + render json: {"error": "Tag not found."}, status: :unprocessable_entity + else + results = TagSearchService.search(t) + render json: paginate(results), status: :ok + end end private @@ -60,6 +65,6 @@ class V1::SearchController < ApplicationController end def tag_search_params - params.permit(:page, :results_per_page, :id) + params.permit(:page, :results_per_page, :name) end end