Add Django's custom Sphinx roles and use them to link to settings

This is necessary for rST docs, i.e. in docstrings and in eval-rst
blocks. Without this, Sphinx cannot seem to understand the role. See:
https://stackoverflow.com/questions/13387125

MyST-Parser seems to be smarter, it can figure out these custom
roles without having to register the types ourselves. This is evident in
the previous commits where I already use the :setting: role in markdown
docs.
pull/12525/head
Sage Abdullah 2024-11-04 12:24:28 +00:00
rodzic 9a5be8f180
commit 5615deb5b1
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: EB1A33CC51CC0217
2 zmienionych plików z 26 dodań i 2 usunięć

Wyświetl plik

@ -365,3 +365,26 @@ epub_copyright = copyright
def setup(app):
app.add_js_file("js/banner.js")
# Django-specific roles, from
# https://github.com/django/django/blob/main/docs/_ext/djangodocs.py:
app.add_crossref_type(
directivename="setting",
rolename="setting",
indextemplate="pair: %s; setting",
)
app.add_crossref_type(
directivename="templatetag",
rolename="ttag",
indextemplate="pair: %s; template tag",
)
app.add_crossref_type(
directivename="templatefilter",
rolename="tfilter",
indextemplate="pair: %s; template filter",
)
app.add_crossref_type(
directivename="fieldlookup",
rolename="lookup",
indextemplate="pair: %s; field lookup type",
)

Wyświetl plik

@ -189,7 +189,7 @@ All block definitions accept the following optional keyword arguments:
A date picker. The following keyword arguments are accepted in addition to the standard ones:
:param format: Date format. This must be one of the recognized formats listed in the `DATE_INPUT_FORMATS <https://docs.djangoproject.com/en/stable/ref/settings/#std:setting-DATE_INPUT_FORMATS>`_ setting. If not specified Wagtail will use the ``WAGTAIL_DATE_FORMAT`` setting with fallback to '%Y-%m-%d'.
:param format: Date format. This must be one of the recognized formats listed in the :std:setting:`django:DATE_INPUT_FORMATS` setting. If not specified Wagtail will use the ``WAGTAIL_DATE_FORMAT`` setting with fallback to ``"%Y-%m-%d"``.
:param required: If true (the default), the field cannot be left blank.
:param help_text: Help text to display alongside the field.
:param validators: A list of validation functions for the field (see :doc:`Django Validators <django:ref/validators>`).
@ -201,6 +201,7 @@ All block definitions accept the following optional keyword arguments:
A time picker. The following keyword arguments are accepted in addition to the standard ones:
:param format: Time format. This must be one of the recognized formats listed in the :std:setting:`django:TIME_INPUT_FORMATS` setting. If not specified Wagtail will use the ``WAGTAIL_TIME_FORMAT`` setting with fallback to ``"%H:%M"``.
:param required: If true (the default), the field cannot be left blank.
:param help_text: Help text to display alongside the field.
:param validators: A list of validation functions for the field (see :doc:`Django Validators <django:ref/validators>`).
@ -212,7 +213,7 @@ All block definitions accept the following optional keyword arguments:
A combined date/time picker. The following keyword arguments are accepted in addition to the standard ones:
:param format: Date/time format. This must be one of the recognized formats listed in the `DATETIME_INPUT_FORMATS <https://docs.djangoproject.com/en/stable/ref/settings/#std:setting-DATETIME_INPUT_FORMATS>`_ setting. If not specified Wagtail will use the ``WAGTAIL_DATETIME_FORMAT`` setting with fallback to '%Y-%m-%d %H:%M'.
:param format: Date/time format. This must be one of the recognized formats listed in the :std:setting:`django:DATETIME_INPUT_FORMATS` setting. If not specified Wagtail will use the ``WAGTAIL_DATETIME_FORMAT`` setting with fallback to ``"%Y-%m-%d %H:%M"``.
:param required: If true (the default), the field cannot be left blank.
:param help_text: Help text to display alongside the field.
:param validators: A list of validation functions for the field (see :doc:`Django Validators <django:ref/validators>`).