Commit 8e20a43b by thanhnd

paging solr query result

parent f302f7cb
Pipeline #602 failed with stages
in 0 seconds
...@@ -70,3 +70,4 @@ gem 'bootstrap-sass' ...@@ -70,3 +70,4 @@ gem 'bootstrap-sass'
#setting file yml #setting file yml
gem 'settingslogic' gem 'settingslogic'
gem 'rsolr' gem 'rsolr'
gem 'will_paginate'
...@@ -243,6 +243,7 @@ GEM ...@@ -243,6 +243,7 @@ GEM
websocket-driver (0.7.1) websocket-driver (0.7.1)
websocket-extensions (>= 0.1.0) websocket-extensions (>= 0.1.0)
websocket-extensions (0.1.4) websocket-extensions (0.1.4)
will_paginate (3.3.0)
xpath (3.2.0) xpath (3.2.0)
nokogiri (~> 1.8) nokogiri (~> 1.8)
zeitwerk (2.2.2) zeitwerk (2.2.2)
...@@ -278,6 +279,7 @@ DEPENDENCIES ...@@ -278,6 +279,7 @@ DEPENDENCIES
web-console (>= 3.3.0) web-console (>= 3.3.0)
webdrivers webdrivers
webpacker (~> 4.0) webpacker (~> 4.0)
will_paginate
RUBY VERSION RUBY VERSION
ruby 2.7.0p0 ruby 2.7.0p0
......
...@@ -11,12 +11,7 @@ class JobsController < ApplicationController ...@@ -11,12 +11,7 @@ class JobsController < ApplicationController
def search def search
return redirect_to root_path, alert: "Empty field!" if params[:search].blank? return redirect_to root_path, alert: "Empty field!" if params[:search].blank?
#@search_job = Job.includes(:city).where("job_name LIKE ?","%#{params[:search]}%")
#@pagin_job = @search_job.page(params[:page]).per(Settings.page)
solr_rs = Solr.new solr_rs = Solr.new
@search_job = solr_rs.query(params[:search]) @pagin_job = solr_rs.query(params[:search], params[:page])
@pagin_job = @search_job
end end
end end
...@@ -6,4 +6,8 @@ ...@@ -6,4 +6,8 @@
<li><%= job['job_name'] %></li> <li><%= job['job_name'] %></li>
</ul> </ul>
<% end %> <% end %>
<div class="container p-5 my-2 bg-secondary text-white">
<%= will_paginate @pagin_job %>
</div>
\ No newline at end of file
...@@ -11,13 +11,10 @@ ...@@ -11,13 +11,10 @@
<div id="job_list" class="container p-5 my-2 bg-secondary text-white"> <div id="job_list" class="container p-5 my-2 bg-secondary text-white">
<div class="total_job"> <div class="total_job">
<label> Total Jobs: <%= Job.count %></label> <label> Total Jobs: <%= Job.count %></label>
</div> </div>
<%= render partial: "jobs"%> <%= render partial: "jobs"%>
</div> </div>
......
...@@ -10,5 +10,5 @@ ...@@ -10,5 +10,5 @@
<div id="job_list" class="container p-5 my-2 bg-secondary text-white"> <div id="job_list" class="container p-5 my-2 bg-secondary text-white">
<%= render partial: "jobs" %> <%= render partial: "jobs" %>
</div> </div>
...@@ -8,9 +8,10 @@ class Solr ...@@ -8,9 +8,10 @@ class Solr
end end
# send a request to /select # send a request to /select
def query (cond) def query (cond,page)
response = solr.get 'select', :params => {:q => "job_name:#{cond}"} #response = solr.get 'select', :params => {:q => "job_name:#{cond}", :start => 0, :rows => 1000}
response['response']['docs'] response = solr.paginate page, 10, 'select', :params => {:q => "job_name:#{cond}"}
#response.paginate 1, 10
response['response']['docs']
end end
end end
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment