mirror of
https://github.com/django/django.git
synced 2025-10-24 06:06:09 +00:00
Used extlinks for PyPI links.
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
This commit is contained in:
committed by
Mariusz Felisiak
parent
255f534590
commit
2c4dc64760
@@ -234,12 +234,10 @@ context, or vice-versa. For this there are two adapter functions, from the
|
||||
are used to transition between the calling styles while preserving
|
||||
compatibility.
|
||||
|
||||
These adapter functions are widely used in Django. The `asgiref`_ package
|
||||
These adapter functions are widely used in Django. The :pypi:`asgiref` package
|
||||
itself is part of the Django project, and it is automatically installed as a
|
||||
dependency when you install Django with ``pip``.
|
||||
|
||||
.. _asgiref: https://pypi.org/project/asgiref/
|
||||
|
||||
``async_to_sync()``
|
||||
-------------------
|
||||
|
||||
|
||||
@@ -1356,8 +1356,7 @@ implementation details see :ref:`using-the-views`.
|
||||
difference between the duration of a reset request for an existing
|
||||
email address and the duration of a reset request for a nonexistent
|
||||
email address. To reduce the overhead, you can use a 3rd party package
|
||||
that allows to send emails asynchronously, e.g. `django-mailer
|
||||
<https://pypi.org/project/django-mailer/>`_.
|
||||
that allows to send emails asynchronously, e.g. :pypi:`django-mailer`.
|
||||
|
||||
**Attributes:**
|
||||
|
||||
|
||||
@@ -94,7 +94,7 @@ use of Argon2 rather than the other algorithms supported by Django.
|
||||
|
||||
To use Argon2id as your default storage algorithm, do the following:
|
||||
|
||||
#. Install the `argon2-cffi library`_. This can be done by running
|
||||
#. Install the :pypi:`argon2-cffi` package. This can be done by running
|
||||
``python -m pip install django[argon2]``, which is equivalent to
|
||||
``python -m pip install argon2-cffi`` (along with any version requirement
|
||||
from Django's ``setup.cfg``).
|
||||
@@ -125,7 +125,7 @@ use it Django supports bcrypt with minimal effort.
|
||||
|
||||
To use Bcrypt as your default storage algorithm, do the following:
|
||||
|
||||
#. Install the `bcrypt library`_. This can be done by running
|
||||
#. Install the :pypi:`bcrypt` package. This can be done by running
|
||||
``python -m pip install django[bcrypt]``, which is equivalent to
|
||||
``python -m pip install bcrypt`` (along with any version requirement from
|
||||
Django's ``setup.cfg``).
|
||||
@@ -416,8 +416,6 @@ Include any other hashers that your site uses in this list.
|
||||
.. _pbkdf2: https://en.wikipedia.org/wiki/PBKDF2
|
||||
.. _nist: https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-132.pdf
|
||||
.. _bcrypt: https://en.wikipedia.org/wiki/Bcrypt
|
||||
.. _`bcrypt library`: https://pypi.org/project/bcrypt/
|
||||
.. _`argon2-cffi library`: https://pypi.org/project/argon2-cffi/
|
||||
.. _argon2: https://en.wikipedia.org/wiki/Argon2
|
||||
.. _scrypt: https://en.wikipedia.org/wiki/Scrypt
|
||||
.. _`Password Hashing Competition`: https://www.password-hashing.net/
|
||||
|
||||
@@ -78,10 +78,7 @@ database or filesystem usage.
|
||||
|
||||
After installing Memcached itself, you'll need to install a Memcached
|
||||
binding. There are several Python Memcached bindings available; the
|
||||
two supported by Django are `pylibmc`_ and `pymemcache`_.
|
||||
|
||||
.. _`pylibmc`: https://pypi.org/project/pylibmc/
|
||||
.. _`pymemcache`: https://pypi.org/project/pymemcache/
|
||||
two supported by Django are :pypi:`pylibmc` and :pypi:`pymemcache`.
|
||||
|
||||
To use Memcached with Django:
|
||||
|
||||
@@ -180,11 +177,8 @@ need a Redis server running either locally or on a remote machine.
|
||||
__ https://redis.io/
|
||||
|
||||
After setting up the Redis server, you'll need to install Python bindings for
|
||||
Redis. `redis-py`_ is the binding supported natively by Django. Installing the
|
||||
additional `hiredis-py`_ package is also recommended.
|
||||
|
||||
.. _`redis-py`: https://pypi.org/project/redis/
|
||||
.. _`hiredis-py`: https://pypi.org/project/hiredis/
|
||||
Redis. :pypi:`redis-py <redis>` is the binding supported natively by Django.
|
||||
Installing the :pypi:`hiredis-py <hiredis>` package is also recommended.
|
||||
|
||||
To use Redis as your cache backend with Django:
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ and cultures.
|
||||
|
||||
* `GitHub <https://github.com/django/django-localflavor>`__
|
||||
* `Documentation <https://django-localflavor.readthedocs.io/>`__
|
||||
* `PyPI <https://pypi.org/project/django-localflavor/>`__
|
||||
* :pypi:`PyPI <django-localflavor>`
|
||||
|
||||
Comments
|
||||
========
|
||||
@@ -26,7 +26,7 @@ product like Disqus.
|
||||
|
||||
* `GitHub <https://github.com/django/django-contrib-comments>`__
|
||||
* `Documentation <https://django-contrib-comments.readthedocs.io/>`__
|
||||
* `PyPI <https://pypi.org/project/django-contrib-comments/>`__
|
||||
* :pypi:`PyPI <django-contrib-comments>`
|
||||
|
||||
Formtools
|
||||
=========
|
||||
@@ -35,4 +35,4 @@ Formtools
|
||||
|
||||
* `GitHub <https://github.com/jazzband/django-formtools/>`__
|
||||
* `Documentation <https://django-formtools.readthedocs.io/>`__
|
||||
* `PyPI <https://pypi.org/project/django-formtools/>`__
|
||||
* :pypi:`PyPI <django-formtools>`
|
||||
|
||||
@@ -415,8 +415,7 @@ Working with lazy translation objects
|
||||
The result of a ``gettext_lazy()`` call can be used wherever you would use a
|
||||
string (a :class:`str` object) in other Django code, but it may not work with
|
||||
arbitrary Python code. For example, the following won't work because the
|
||||
`requests <https://pypi.org/project/requests/>`_ library doesn't handle
|
||||
``gettext_lazy`` objects::
|
||||
:pypi:`requests` library doesn't handle ``gettext_lazy`` objects::
|
||||
|
||||
body = gettext_lazy("I \u2764 Django") # (Unicode :heart:)
|
||||
requests.post("https://example.com/send", data={"body": body})
|
||||
|
||||
@@ -857,7 +857,7 @@ important part of testing applications, so it's strongly recommended to check
|
||||
the coverage of your tests.
|
||||
|
||||
Django can be easily integrated with `coverage.py`_, a tool for measuring code
|
||||
coverage of Python programs. First, `install coverage.py`_. Next, run the
|
||||
coverage of Python programs. First, install :pypi:`coverage`. Next, run the
|
||||
following from your project folder containing ``manage.py``:
|
||||
|
||||
.. code-block:: shell
|
||||
@@ -878,4 +878,3 @@ For more options like annotated HTML listings detailing missed lines, see the
|
||||
`coverage.py`_ docs.
|
||||
|
||||
.. _coverage.py: https://coverage.readthedocs.io/
|
||||
.. _install coverage.py: https://pypi.org/project/coverage/
|
||||
|
||||
@@ -1031,8 +1031,7 @@ port assigned by the operating system. The server's URL can be accessed with
|
||||
``self.live_server_url`` during the tests.
|
||||
|
||||
To demonstrate how to use ``LiveServerTestCase``, let's write a Selenium test.
|
||||
First of all, you need to install the `selenium package`_ into your Python
|
||||
path:
|
||||
First of all, you need to install the :pypi:`selenium` package:
|
||||
|
||||
.. console::
|
||||
|
||||
@@ -1090,7 +1089,6 @@ example above is just a tiny fraction of what the Selenium client can do; check
|
||||
out the `full reference`_ for more details.
|
||||
|
||||
.. _Selenium: https://www.selenium.dev/
|
||||
.. _selenium package: https://pypi.org/project/selenium/
|
||||
.. _full reference: https://selenium-python.readthedocs.io/api.html
|
||||
.. _Firefox: https://www.mozilla.com/firefox/
|
||||
|
||||
|
||||
Reference in New Issue
Block a user