mirror of
https://github.com/projekteuler/projekteuler.git
synced 2025-12-10 08:46:41 +01:00
Merge pull request #8 from PFischbeck/problem_pagination
Problem pagination
This commit is contained in:
commit
31e04d9511
3
Gemfile
3
Gemfile
@ -25,6 +25,9 @@ gem 'sdoc', '~> 0.4.0', group: :doc
|
|||||||
|
|
||||||
gem 'twitter-bootstrap-rails'
|
gem 'twitter-bootstrap-rails'
|
||||||
|
|
||||||
|
gem 'will_paginate', '~> 3.0.6'
|
||||||
|
gem 'will_paginate-bootstrap'
|
||||||
|
|
||||||
# Use ActiveModel has_secure_password
|
# Use ActiveModel has_secure_password
|
||||||
# gem 'bcrypt', '~> 3.1.7'
|
# gem 'bcrypt', '~> 3.1.7'
|
||||||
|
|
||||||
|
|||||||
@ -109,6 +109,9 @@ GEM
|
|||||||
uglifier (2.5.3)
|
uglifier (2.5.3)
|
||||||
execjs (>= 0.3.0)
|
execjs (>= 0.3.0)
|
||||||
json (>= 1.8.0)
|
json (>= 1.8.0)
|
||||||
|
will_paginate (3.0.7)
|
||||||
|
will_paginate-bootstrap (1.0.1)
|
||||||
|
will_paginate (>= 3.0.3)
|
||||||
|
|
||||||
PLATFORMS
|
PLATFORMS
|
||||||
x86-mingw32
|
x86-mingw32
|
||||||
@ -125,3 +128,5 @@ DEPENDENCIES
|
|||||||
twitter-bootstrap-rails
|
twitter-bootstrap-rails
|
||||||
tzinfo-data
|
tzinfo-data
|
||||||
uglifier (>= 1.3.0)
|
uglifier (>= 1.3.0)
|
||||||
|
will_paginate (~> 3.0.6)
|
||||||
|
will_paginate-bootstrap
|
||||||
|
|||||||
@ -4,7 +4,7 @@ class ProblemsController < ApplicationController
|
|||||||
# GET /problems
|
# GET /problems
|
||||||
# GET /problems.json
|
# GET /problems.json
|
||||||
def index
|
def index
|
||||||
@problems = Problem.all
|
@problems = Problem.paginate(page: params[:page])
|
||||||
end
|
end
|
||||||
|
|
||||||
# GET /problems/1
|
# GET /problems/1
|
||||||
|
|||||||
@ -1,4 +1,6 @@
|
|||||||
class Problem < ActiveRecord::Base
|
class Problem < ActiveRecord::Base
|
||||||
validates :title, :content, presence: true
|
validates :title, :content, presence: true
|
||||||
validates :title, uniqueness: true
|
validates :title, uniqueness: true
|
||||||
|
|
||||||
|
self.per_page = 50
|
||||||
end
|
end
|
||||||
|
|||||||
1
app/views/problems/_problem_pagination.html.erb
Normal file
1
app/views/problems/_problem_pagination.html.erb
Normal file
@ -0,0 +1 @@
|
|||||||
|
<%= will_paginate @problems, renderer: BootstrapPagination::Rails %>
|
||||||
@ -1,5 +1,6 @@
|
|||||||
<h1>Listing problems</h1>
|
<h1>Listing problems</h1>
|
||||||
|
|
||||||
|
<%= render 'problem_pagination' %>
|
||||||
<table class="table table-striped table-bordered">
|
<table class="table table-striped table-bordered">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
@ -17,7 +18,7 @@
|
|||||||
<% end %>
|
<% end %>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
<%= render 'problem_pagination' %>
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
<%= link_to 'New Problem', new_problem_path, class: 'btn btn-default' %>
|
<%= link_to 'New Problem', new_problem_path, class: 'btn btn-default' %>
|
||||||
|
|||||||
@ -5,3 +5,10 @@
|
|||||||
#
|
#
|
||||||
# cities = City.create([{ name: 'Chicago' }, { name: 'Copenhagen' }])
|
# cities = City.create([{ name: 'Chicago' }, { name: 'Copenhagen' }])
|
||||||
# Mayor.create(name: 'Emanuel', city: cities.first)
|
# Mayor.create(name: 'Emanuel', city: cities.first)
|
||||||
|
|
||||||
|
for i in 1..103 do
|
||||||
|
Problem.create(
|
||||||
|
title: "Problem Nummer #{i}",
|
||||||
|
content: "Das hier ist der Inhalt von <b>Problem #{i}</b>.<br />Hier ist die zweite Zeile."
|
||||||
|
)
|
||||||
|
end
|
||||||
Loading…
Reference in New Issue
Block a user