From 2f9868432481698fc8a43bc5742195a3e2742d41 Mon Sep 17 00:00:00 2001 From: "sylor_huang@126.com" Date: Sat, 9 May 2020 15:44:51 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=8B=E8=AF=95projects=5Findex=E7=9A=84sear?= =?UTF-8?q?ch=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/projects_controller.rb | 7 +---- .../projects/_project_item.json.jbuilder | 25 ++++++++++++++++ app/views/projects/index.json.jbuilder | 29 ++----------------- 3 files changed, 28 insertions(+), 33 deletions(-) create mode 100644 app/views/projects/_project_item.json.jbuilder diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb index 12af65a50..663157b51 100644 --- a/app/controllers/projects_controller.rb +++ b/app/controllers/projects_controller.rb @@ -8,12 +8,7 @@ class ProjectsController < ApplicationController def index scope = Projects::ListQuery.call(params) @total_count = scope.size - Rails.logger.info("#######______total_count______######{@total_count}") - page = params[:page] || 1 - limit = params[:limit] || 15 - projects = scope.page(page).per(limit) - Rails.logger.info("#######_____projects_ids______######{projects.pluck(:id)}") - @projects = projects + @projects = paginate(scope) end def create diff --git a/app/views/projects/_project_item.json.jbuilder b/app/views/projects/_project_item.json.jbuilder new file mode 100644 index 000000000..ba4adc412 --- /dev/null +++ b/app/views/projects/_project_item.json.jbuilder @@ -0,0 +1,25 @@ +user = project.owner +if user.present? + json.partial! 'project', project: project + json.author do + json.name user.try(:show_real_name) + json.login user.login + json.image_url url_to_avatar(project.owner) + end + json.category do + if project.project_category.blank? + json.nil! + else + json.id project.project_category.id + json.name project.project_category.name + end + end + json.language do + if project.project_language.blank? + json.nil! + else + json.id project.project_language.id + json.name project.project_language.name + end + end +end \ No newline at end of file diff --git a/app/views/projects/index.json.jbuilder b/app/views/projects/index.json.jbuilder index 4cb260fd6..6c90e7747 100644 --- a/app/views/projects/index.json.jbuilder +++ b/app/views/projects/index.json.jbuilder @@ -1,30 +1,5 @@ +json.project_ids @projects.pluck(:id) json.total_count @total_count json.projects do - json.array! @projects.to_a do |project| - user = project.owner - if user.present? - json.partial! 'project', project: project - json.author do - json.name user.try(:show_real_name) - json.login user.login - json.image_url url_to_avatar(project.owner) - end - json.category do - if project.project_category.blank? - json.nil! - else - json.id project.project_category.id - json.name project.project_category.name - end - end - json.language do - if project.project_language.blank? - json.nil! - else - json.id project.project_language.id - json.name project.project_language.name - end - end - end - end + json.partial! "/projects/project_item", collection: @projects, as: :porject end