aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_controller/pagination.rb
diff options
context:
space:
mode:
authorDavid Heinemeier Hansson <david@loudthinking.com>2005-07-15 20:27:38 +0000
committerDavid Heinemeier Hansson <david@loudthinking.com>2005-07-15 20:27:38 +0000
commit45804e2c86228efcfb7d635525f0d1635a1b25c1 (patch)
treef286bddb5813d6d49ee251428058cda2c0f62539 /actionpack/lib/action_controller/pagination.rb
parent1708a863a5ed9ea37010de099fbe68193e67f4ba (diff)
downloadrails-45804e2c86228efcfb7d635525f0d1635a1b25c1.tar.gz
rails-45804e2c86228efcfb7d635525f0d1635a1b25c1.tar.bz2
rails-45804e2c86228efcfb7d635525f0d1635a1b25c1.zip
More pagination speed #1334 [Stefan Kaes]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1839 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'actionpack/lib/action_controller/pagination.rb')
-rw-r--r--actionpack/lib/action_controller/pagination.rb8
1 files changed, 5 insertions, 3 deletions
diff --git a/actionpack/lib/action_controller/pagination.rb b/actionpack/lib/action_controller/pagination.rb
index 4b936c0ee7..6b9294f963 100644
--- a/actionpack/lib/action_controller/pagination.rb
+++ b/actionpack/lib/action_controller/pagination.rb
@@ -31,7 +31,7 @@ module ActionController
# instance variable, which is an ordered collection of model objects for the
# current page (at most 20, sorted by last name and first name), and a
# <tt>@person_pages</tt> Paginator instance. The current page is determined
- # by the <tt>params[:page]</tt> variable.
+ # by the <tt>@params['page']</tt> variable.
#
# ==== Pagination for a single action
#
@@ -235,7 +235,8 @@ module ActionController
# Returns the number of pages in this paginator.
def page_count
- @page_count ||= @item_count.zero? ? 1 : @item_count.div(@items_per_page)
+ @page_count ||= @item_count.zero? ? 1 :
+ (q,r=@item_count.divmod(@items_per_page); r==0? q : q+1)
end
alias length :page_count
@@ -374,5 +375,6 @@ module ActionController
alias to_a :pages
end
end
+
end
-end \ No newline at end of file
+end