X-Git-Url: https://git.mdrn.pl/django-pagination.git/blobdiff_plain/993daaba73aa6511449f2c2ccfa869692afa10d5..73848ab99035e9b6d0bb6cf2f0483d70aac22b62:/README diff --git a/README b/README index 9ea2b1b..ff4d063 100644 --- a/README +++ b/README @@ -5,101 +5,33 @@ This project is a fork of apparently dead "django-pagination" project originally written by 'Eric Florenzano'. It is maintained by the Linaro Validation/Infrastructure team. Latest releases can be found on launchpad and pypi. + +We are in the process of deciding how to properly host and manage the project. +Feel free to hop to #linaro on irc.freenode.net and ask either 'zyga' or +'mwhudson' about this. -How to use linaro-django-pagination +About top-level package name change ----------------------------------- +The top level package name was changed from `pagination` to +`linaro-django-pagination`. I did this to ensure that existing users of the +original package could easily transition, on their own terms. Since both +packages are co-installable you are free to check things out and see if the new +pagination code works well for you or not. -``linaro-django-pagination`` allows for easy Digg-style pagination without -modifying your views. - -There are really 5 steps to setting it up with your projects (not including -installation, which is covered in INSTALL.txt in this same directory.) - -1. List this application in the ``INSTALLED_APPS`` portion of your settings - file. Your settings file might look something like:: - - INSTALLED_APPS = ( - # ... - 'linaro_django_pagination', - ) - - -2. Install the pagination middleware. Your settings file might look something - like:: - - MIDDLEWARE_CLASSES = ( - # ... - 'linaro_django_pagination.middleware.PaginationMiddleware', - ) - -3. If it's not already added in your setup, add the request context processor. - Note that context processors are set by default implicitly, so to set them - explicitly, you need to copy and paste this code into your under - the value TEMPLATE_CONTEXT_PROCESSORS:: - - ("django.core.context_processors.auth", - "django.core.context_processors.debug", - "django.core.context_processors.i18n", - "django.core.context_processors.media", - "django.core.context_processors.request") - -4. Add this line at the top of your template to load the pagination tags: - - {% load pagination_tags %} +Also, since the implementation of the actual tags was rewritten I would not +feel entirely confident that the new package is a drop-in replacement. -5. Decide on a variable that you would like to paginate, and use the - autopaginate tag on that variable before iterating over it. This could - take one of two forms (using the canonical ``object_list`` as an example - variable): - - {% autopaginate object_list %} - - This assumes that you would like to have the default 20 results per page. - If you would like to specify your own amount of results per page, you can - specify that like so: - - {% autopaginate object_list 10 %} - - Note that this replaces ``object_list`` with the list for the current page, so - you can iterate over the ``object_list`` like you normally would. - +Contributors +------------ -6. Now you want to display the current page and the available pages, so - somewhere after having used autopaginate, use the paginate inclusion tag: - - {% paginate %} - - This does not take any arguments, but does assume that you have already - called autopaginate, so make sure to do so first. +We would like to welcome any and all contributors. Please use the pull request +feature on github. -That's it! You have now paginated ``object_list`` and given users of the site -a way to navigate between the different pages--all without touching your views. - - -Optional Settings ------------------ - -In linaro-django-pagination, there are no required settings. There are, -however, a small set of optional settings useful for changing the default -behavior of the pagination tags. Here's an overview: - -``PAGINATION_DEFAULT_PAGINATION`` - The default amount of items to show on a page if no number is specified. - -``PAGINATION_DEFAULT_WINDOW`` - The number of items to the left and to the right of the current page to - display (accounting for ellipses). - -``PAGINATION_DEFAULT_ORPHANS`` - The number of orphans allowed. According to the Django documentation, - orphans are defined as:: - - The minimum number of items allowed on the last page, defaults to zero. +How to use linaro-django-pagination +----------------------------------- -``PAGINATION_INVALID_PAGE_RAISES_404`` - Determines whether an invalid page raises an ``Http404`` or just sets the - ``invalid_page`` context variable. ``True`` does the former and ``False`` - does the latter. +See our official documentation for more details. +http://packages.python.org/linaro-django-pagination/