Backport of r11994 from trunk. git-svn-id: http://code.djangoproject.com/svn/django/branches/releases/1.1.X@11995 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
ed192ea56f
commit
d8ea6831f9
|
@ -35,7 +35,7 @@ also need a database engine. PostgreSQL_ is recommended, because we're
|
|||
PostgreSQL fans, and MySQL_, `SQLite 3`_, and Oracle_ are also supported.
|
||||
|
||||
.. _Python: http://www.python.org/
|
||||
.. _WSGI: http://www.python.org/peps/pep-0333.html
|
||||
.. _WSGI: http://www.python.org/dev/peps/pep-0333/
|
||||
.. _server arrangements wiki page: http://code.djangoproject.com/wiki/ServerArrangements
|
||||
.. _PostgreSQL: http://www.postgresql.org/
|
||||
.. _MySQL: http://www.mysql.com/
|
||||
|
|
|
@ -12,7 +12,7 @@ Windows Authentication or Apache and `mod_authnz_ldap`_, `CAS`_, `Cosign`_,
|
|||
`WebAuth`_, `mod_auth_sspi`_, etc.
|
||||
|
||||
.. _mod_authnz_ldap: http://httpd.apache.org/docs/2.2/mod/mod_authnz_ldap.html
|
||||
.. _CAS: http://www.ja-sig.org/products/cas/
|
||||
.. _CAS: http://www.jasig.org/cas
|
||||
.. _Cosign: http://weblogin.org
|
||||
.. _WebAuth: http://www.stanford.edu/services/webauth/
|
||||
.. _mod_auth_sspi: http://sourceforge.net/projects/mod-auth-sspi
|
||||
|
|
|
@ -375,9 +375,9 @@ set of imports until it stops crashing, so as to find the specific module that
|
|||
causes the problem. Drop down further into modules and look into their imports,
|
||||
as necessary.
|
||||
|
||||
.. _Expat Causing Apache Crash: http://www.dscpl.com.au/articles/modpython-006.html
|
||||
.. _Expat Causing Apache Crash: http://www.dscpl.com.au/wiki/ModPython/Articles/ExpatCausingApacheCrash
|
||||
.. _mod_python FAQ entry: http://modpython.org/FAQ/faqw.py?req=show&file=faq02.013.htp
|
||||
.. _Getting mod_python Working: http://www.dscpl.com.au/articles/modpython-001.html
|
||||
.. _Getting mod_python Working: http://www.dscpl.com.au/wiki/ModPython/Articles/GettingModPythonWorking
|
||||
|
||||
If you get a UnicodeEncodeError
|
||||
===============================
|
||||
|
|
|
@ -16,13 +16,13 @@ For example, Django was used at kusports.com_ to generate customized,
|
|||
printer-friendly NCAA tournament brackets, as PDF files, for people
|
||||
participating in a March Madness contest.
|
||||
|
||||
.. _ReportLab: http://www.reportlab.org/rl_toolkit.html
|
||||
.. _ReportLab: http://www.reportlab.org/oss/rl-toolkit/
|
||||
.. _kusports.com: http://www.kusports.com/
|
||||
|
||||
Install ReportLab
|
||||
=================
|
||||
|
||||
Download and install the ReportLab library from http://www.reportlab.org/downloads.html.
|
||||
Download and install the ReportLab library from http://www.reportlab.org/oss/rl-toolkit/download/.
|
||||
The `user guide`_ (not coincidentally, a PDF file) explains how to install it.
|
||||
|
||||
Test your installation by importing it in the Python interactive interpreter::
|
||||
|
@ -138,17 +138,15 @@ Further resources
|
|||
|
||||
* PDFlib_ is another PDF-generation library that has Python bindings. To
|
||||
use it with Django, just use the same concepts explained in this article.
|
||||
* `Pisa HTML2PDF`_ is yet another PDF-generation library. Pisa ships with
|
||||
* `Pisa XHTML2PDF`_ is yet another PDF-generation library. Pisa ships with
|
||||
an example of how to integrate Pisa with Django.
|
||||
* HTMLdoc_ is a command-line script that can convert HTML to PDF. It
|
||||
doesn't have a Python interface, but you can escape out to the shell
|
||||
using ``system`` or ``popen`` and retrieve the output in Python.
|
||||
* `forge_fdf in Python`_ is a library that fills in PDF forms.
|
||||
|
||||
.. _PDFlib: http://www.pdflib.org/
|
||||
.. _`Pisa HTML2PDF`: http://www.htmltopdf.org/
|
||||
.. _`Pisa XHTML2PDF`: http://www.xhtml2pdf.com/
|
||||
.. _HTMLdoc: http://www.htmldoc.org/
|
||||
.. _forge_fdf in Python: http://www.accesspdf.com/article.php/20050421092951834
|
||||
|
||||
Other formats
|
||||
=============
|
||||
|
|
|
@ -823,7 +823,8 @@ dependencies:
|
|||
* Textile_
|
||||
* Docutils_
|
||||
* setuptools_
|
||||
* memcached_, plus the either the python-memcached_ or cmemcached_ Python binding
|
||||
* memcached_, plus the either the python-memcached_ or cmemcached_
|
||||
Python binding
|
||||
|
||||
If you want to test the memcached cache backend, you will also need to define
|
||||
a :setting:`CACHE_BACKEND` setting that points at your memcached instance.
|
||||
|
@ -838,7 +839,7 @@ associated tests will be skipped.
|
|||
.. _setuptools: http://pypi.python.org/pypi/setuptools/
|
||||
.. _memcached: http://www.danga.com/memcached/
|
||||
.. _python-memcached: http://pypi.python.org/pypi/python-memcached/
|
||||
.. _cmemcached: http://pypi.python.org/pypi/cmemcache
|
||||
.. _cmemcached: http://gijsbert.org/cmemcache/index.html
|
||||
|
||||
To run a subset of the unit tests, append the names of the test modules to the
|
||||
``runtests.py`` command line. See the list of directories in
|
||||
|
@ -933,9 +934,9 @@ for feature branches:
|
|||
If you want a feature branch in SVN, you'll need to ask in
|
||||
`django-developers`_ for a mentor.
|
||||
|
||||
.. _git: http://git.or.cz/
|
||||
.. _mercurial: http://www.selenic.com/mercurial/
|
||||
.. _bazaar: http://bazaar-vcs.org/
|
||||
.. _git: http://git-scm.com/
|
||||
.. _mercurial: http://mercurial.selenic.com/
|
||||
.. _bazaar: http://bazaar.canonical.com/
|
||||
.. _django branches: http://code.djangoproject.com/wiki/DjangoBranches
|
||||
|
||||
Branch rules
|
||||
|
@ -1067,7 +1068,7 @@ If you're using Django 0.95 or earlier and installed it using
|
|||
file. Then copy the branch's version of the ``django`` directory into
|
||||
``site-packages``.
|
||||
|
||||
.. _path file: http://docs.python.org/lib/module-site.html
|
||||
.. _path file: http://docs.python.org/library/site.html
|
||||
|
||||
Deciding on features
|
||||
====================
|
||||
|
@ -1133,6 +1134,6 @@ requests for commit access are potential flame-war starters, and will be ignored
|
|||
.. _django-users: http://groups.google.com/group/django-users
|
||||
.. _`#django`: irc://irc.freenode.net/django
|
||||
.. _list of tickets with patches: http://code.djangoproject.com/query?status=new&status=assigned&status=reopened&has_patch=1&order=priority
|
||||
.. _pep8.py: http://svn.browsershots.org/trunk/devtools/pep8/pep8.py
|
||||
.. _pep8.py: http://pypi.python.org/pypi/pep8/
|
||||
.. _i18n branch: http://code.djangoproject.com/browser/django/branches/i18n
|
||||
.. _`tags/releases`: http://code.djangoproject.com/browser/django/tags/releases
|
||||
|
|
|
@ -10,7 +10,7 @@ based on docutils__. The basic idea is that lightly-formatted plain-text
|
|||
documentation is transformed into HTML, PDF, and any other output format.
|
||||
|
||||
__ http://sphinx.pocoo.org/
|
||||
__ http://docutils.sf.net/
|
||||
__ http://docutils.sourceforge.net/
|
||||
|
||||
To actually build the documentation locally, you'll currently need to install
|
||||
Sphinx -- ``easy_install Sphinx`` should do the trick.
|
||||
|
|
|
@ -102,7 +102,7 @@ These files are:
|
|||
contents" of your Django-powered site. You can read more about URLs in
|
||||
:ref:`topics-http-urls`.
|
||||
|
||||
.. _more about packages: http://docs.python.org/tut/node8.html#packages
|
||||
.. _more about packages: http://docs.python.org/tutorial/modules.html#packages
|
||||
|
||||
The development server
|
||||
----------------------
|
||||
|
@ -361,7 +361,7 @@ Finally, note a relationship is defined, using
|
|||
to a single Poll. Django supports all the common database relationships:
|
||||
many-to-ones, many-to-manys and one-to-ones.
|
||||
|
||||
.. _`Python path`: http://docs.python.org/tut/node8.html#SECTION008110000000000000000
|
||||
.. _`Python path`: http://docs.python.org/tutorial/modules.html#the-module-search-path
|
||||
|
||||
Activating models
|
||||
=================
|
||||
|
|
|
@ -26,7 +26,6 @@ content in a custom template.
|
|||
|
||||
Here are some examples of flatpages on Django-powered sites:
|
||||
|
||||
* http://www.chicagocrime.org/about/
|
||||
* http://www.everyblock.com/about/
|
||||
* http://www.lawrence.com/about/contact/
|
||||
|
||||
|
|
|
@ -19,7 +19,7 @@ those packages have.
|
|||
``'django.contrib.admin'``) to your ``INSTALLED_APPS`` setting and re-run
|
||||
``manage.py syncdb``.
|
||||
|
||||
.. _"batteries included" philosophy: http://docs.python.org/tut/node12.html#batteries-included
|
||||
.. _"batteries included" philosophy: http://docs.python.org/tutorial/stdlib.html#batteries-included
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
|
|
@ -627,7 +627,7 @@ United Kingdom (``uk``)
|
|||
|
||||
A form field that validates input as a UK postcode. The regular
|
||||
expression used is sourced from the schema for British Standard BS7666
|
||||
address types at http://www.govtalk.gov.uk/gdsc/schemas/bs7666-v2-0.xsd.
|
||||
address types at http://www.cabinetoffice.gov.uk/media/291293/bs7666-v2-0.xml.
|
||||
|
||||
.. class:: uk.forms.UKCountySelect
|
||||
|
||||
|
|
|
@ -940,7 +940,7 @@ attributes. Thus, you can subclass the appropriate feed generator class
|
|||
(``Atom1Feed`` or ``Rss201rev2Feed``) and extend these callbacks. They are:
|
||||
|
||||
.. _georss: http://georss.org/
|
||||
.. _itunes podcast format: http://www.apple.com/itunes/store/podcaststechspecs.html
|
||||
.. _itunes podcast format: http://www.apple.com/itunes/podcasts/specs.html
|
||||
|
||||
``SyndicationFeed.root_attributes(self, )``
|
||||
Return a ``dict`` of attributes to add to the root feed element
|
||||
|
|
|
@ -543,7 +543,7 @@ By default, :class:`FileField` instances are
|
|||
created as ``varchar(100)`` columns in your database. As with other fields, you
|
||||
can change the maximum length using the :attr:`~CharField.max_length` argument.
|
||||
|
||||
.. _`strftime formatting`: http://docs.python.org/lib/module-time.html#l2h-1941
|
||||
.. _`strftime formatting`: http://docs.python.org/library/time.html#time.strftime
|
||||
|
||||
``FilePathField``
|
||||
-----------------
|
||||
|
|
|
@ -94,7 +94,7 @@ the query construction and is not part of the public API. However, it is safe
|
|||
(and fully supported) to pickle and unpickle the attribute's contents as
|
||||
described here.
|
||||
|
||||
.. _pickle: http://docs.python.org/lib/module-pickle.html
|
||||
.. _pickle: http://docs.python.org/library/pickle.html
|
||||
|
||||
.. _queryset-api:
|
||||
|
||||
|
|
|
@ -534,7 +534,7 @@ system's standard umask.
|
|||
get totally incorrect behavior.
|
||||
|
||||
|
||||
.. _documentation for os.chmod: http://docs.python.org/lib/os-file-dir.html
|
||||
.. _documentation for os.chmod: http://docs.python.org/library/os.html#os.chmod
|
||||
|
||||
.. setting:: FIXTURE_DIRS
|
||||
|
||||
|
|
|
@ -21,8 +21,8 @@ data. Normally, this means giving it an encoding of UTF-8 or UTF-16. If you use
|
|||
a more restrictive encoding -- for example, latin1 (iso8859-1) -- you won't be
|
||||
able to store certain characters in the database, and information will be lost.
|
||||
|
||||
* MySQL users, refer to the `MySQL manual`_ (section 10.3.2 for MySQL 5.1) for
|
||||
details on how to set or alter the database character set encoding.
|
||||
* MySQL users, refer to the `MySQL manual`_ (section 9.1.3.2 for MySQL 5.1)
|
||||
for details on how to set or alter the database character set encoding.
|
||||
|
||||
* PostgreSQL users, refer to the `PostgreSQL manual`_ (section 21.2.2 in
|
||||
PostgreSQL 8) for details on creating databases with the correct encoding.
|
||||
|
@ -30,7 +30,7 @@ able to store certain characters in the database, and information will be lost.
|
|||
* SQLite users, there is nothing you need to do. SQLite always uses UTF-8
|
||||
for internal encoding.
|
||||
|
||||
.. _MySQL manual: http://www.mysql.org/doc/refman/5.1/en/charset-database.html
|
||||
.. _MySQL manual: http://dev.mysql.com/doc/refman/5.1/en/charset-database.html
|
||||
.. _PostgreSQL manual: http://www.postgresql.org/docs/8.2/static/multibyte.html#AEN24104
|
||||
|
||||
All of Django's database backends automatically convert Unicode strings into
|
||||
|
|
|
@ -227,8 +227,8 @@ start of your tests. This makes testing with real data much easier.
|
|||
|
||||
See `the testing documentation`_ for the full details.
|
||||
|
||||
.. _doctest: http://docs.python.org/lib/module-doctest.html
|
||||
.. _unittest: http://docs.python.org/lib/module-unittest.html
|
||||
.. _doctest: http://docs.python.org/library/doctest.html
|
||||
.. _unittest: http://docs.python.org/library/unittest.html
|
||||
.. _the testing documentation: http://www.djangoproject.com/documentation/0.96/testing/
|
||||
.. _serialization formats: http://www.djangoproject.com/documentation/0.96/serialization/
|
||||
|
||||
|
|
|
@ -327,7 +327,7 @@ translates (roughly) into the following SQL::
|
|||
arguments whose names and values are evaluated at runtime. For more
|
||||
information, see `Keyword Arguments`_ in the official Python tutorial.
|
||||
|
||||
.. _`Keyword Arguments`: http://docs.python.org/tut/node6.html#SECTION006720000000000000000
|
||||
.. _`Keyword Arguments`: http://docs.python.org/tutorial/controlflow.html#keyword-arguments
|
||||
|
||||
If you pass an invalid keyword argument, a lookup function will raise
|
||||
``TypeError``.
|
||||
|
|
|
@ -85,5 +85,4 @@ A final note: If all you want to do is a custom ``WHERE`` clause, you can just
|
|||
use the ``where``, ``tables`` and ``params`` arguments to the
|
||||
:ref:`extra clause <extra>` in the standard queryset API.
|
||||
|
||||
.. _Python DB-API: http://www.python.org/peps/pep-0249.html
|
||||
|
||||
.. _Python DB-API: http://www.python.org/dev/peps/pep-0249/
|
||||
|
|
|
@ -55,7 +55,7 @@ Internally, Django uses a ``django.core.files.File`` any time it needs to
|
|||
represent a file. This object is a thin wrapper around Python's `built-in file
|
||||
object`_ with some Django-specific additions.
|
||||
|
||||
.. _built-in file object: http://docs.python.org/lib/bltin-file-objects.html
|
||||
.. _built-in file object: http://docs.python.org/library/stdtypes.html#bltin-file-objects
|
||||
|
||||
Most of the time you'll simply use a ``File`` that Django's given you (i.e. a
|
||||
file attached to a model as above, or perhaps an uploaded file).
|
||||
|
|
|
@ -173,7 +173,7 @@ Three settings control Django's file upload behavior:
|
|||
Which means "try to upload to memory first, then fall back to temporary
|
||||
files."
|
||||
|
||||
.. _documentation for os.chmod: http://docs.python.org/lib/os-file-dir.html
|
||||
.. _documentation for os.chmod: http://docs.python.org/library/os.html#os.chmod
|
||||
|
||||
``UploadedFile`` objects
|
||||
========================
|
||||
|
|
|
@ -53,7 +53,7 @@ for each platform.
|
|||
|
||||
.. _Apache: http://httpd.apache.org/
|
||||
.. _mod_wsgi: http://code.google.com/p/modwsgi/
|
||||
.. _WSGI: http://www.python.org/peps/pep-0333.html
|
||||
.. _WSGI: http://www.python.org/dev/peps/pep-0333/
|
||||
.. _server-arrangements wiki page: http://code.djangoproject.com/wiki/ServerArrangements
|
||||
|
||||
.. _database-installation:
|
||||
|
@ -125,7 +125,7 @@ Django will need permission to create a test database.
|
|||
.. _compiled Windows version: http://stickpeople.com/projects/python/win-psycopg/
|
||||
.. _MySQLdb: http://sourceforge.net/projects/mysql-python
|
||||
.. _SQLite: http://www.sqlite.org/
|
||||
.. _pysqlite: http://pysqlite.org/
|
||||
.. _pysqlite: http://trac.edgewall.org/wiki/PySqlite
|
||||
.. _cx_Oracle: http://cx-oracle.sourceforge.net/
|
||||
.. _Oracle: http://www.oracle.com/
|
||||
.. _Sybase SQL Anywhere: http://code.google.com/p/sqlany-django/
|
||||
|
|
|
@ -147,7 +147,7 @@ as must have ``CREATE DATABASE`` rights.
|
|||
For more details about how doctest works, see the `standard library
|
||||
documentation for doctest`_.
|
||||
|
||||
.. _doctest: http://docs.python.org/lib/module-doctest.html
|
||||
.. _doctest: http://docs.python.org/library/doctest.html
|
||||
.. _standard library documentation for doctest: doctest_
|
||||
|
||||
Writing unit tests
|
||||
|
@ -197,9 +197,9 @@ suite.
|
|||
For more details about ``unittest``, see the `standard library unittest
|
||||
documentation`_.
|
||||
|
||||
.. _unittest: http://docs.python.org/lib/module-unittest.html
|
||||
.. _unittest: http://docs.python.org/library/unittest.html
|
||||
.. _standard library unittest documentation: unittest_
|
||||
.. _suggested organization: http://docs.python.org/lib/organizing-tests.html
|
||||
.. _suggested organization: http://docs.python.org/library/unittest.html#organizing-tests
|
||||
|
||||
Which should I use?
|
||||
-------------------
|
||||
|
@ -412,7 +412,7 @@ a different focus. In short:
|
|||
A comprehensive test suite should use a combination of both test types.
|
||||
|
||||
.. _Twill: http://twill.idyll.org/
|
||||
.. _Selenium: http://www.openqa.org/selenium/
|
||||
.. _Selenium: http://seleniumhq.org/
|
||||
|
||||
Overview and a quick example
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
@ -465,8 +465,8 @@ Note a few important things about how the test client works:
|
|||
This black magic (essentially a patching of Django's template system in
|
||||
memory) only happens during test running.
|
||||
|
||||
.. _urllib: http://docs.python.org/lib/module-urllib.html
|
||||
.. _urllib2: http://docs.python.org/lib/module-urllib2.html
|
||||
.. _urllib: http://docs.python.org/library/urllib.html
|
||||
.. _urllib2: http://docs.python.org/library/urllib2.html
|
||||
|
||||
Making requests
|
||||
~~~~~~~~~~~~~~~
|
||||
|
@ -807,7 +807,7 @@ can access these properties as part of a test condition.
|
|||
A dictionary-like object containing session information. See the
|
||||
:ref:`session documentation<topics-http-sessions>` for full details.
|
||||
|
||||
.. _Cookie module documentation: http://docs.python.org/lib/module-Cookie.html
|
||||
.. _Cookie module documentation: http://docs.python.org/library/cookie.html
|
||||
|
||||
Example
|
||||
~~~~~~~
|
||||
|
|
Loading…
Reference in New Issue