django-pfx 1.2.dev99__tar.gz → 1.2.dev103__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (124) hide show
  1. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/PKG-INFO +1 -1
  2. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/django_pfx.egg-info/PKG-INFO +1 -1
  3. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/django_pfx.egg-info/SOURCES.txt +1 -1
  4. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/doc/conf.py +11 -1
  5. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/doc/index.rst +1 -1
  6. django-pfx-1.2.dev103/doc/source/api.views.rst +46 -0
  7. django-pfx-1.2.dev103/doc/source/authentication.md +35 -0
  8. django-pfx-1.2.dev103/doc/source/internationalisation.md +41 -0
  9. django-pfx-1.2.dev99/doc/source/authentication.md +0 -8
  10. django-pfx-1.2.dev99/doc/source/internationalisation.md +0 -5
  11. django-pfx-1.2.dev99/doc/source/pfxcore.views.rst +0 -18
  12. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/.gitignore +0 -0
  13. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/.gitlab-ci.yml +0 -0
  14. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/.pre-commit-config.yaml +0 -0
  15. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/LICENSE +0 -0
  16. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/MANIFEST.in +0 -0
  17. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/README.md +0 -0
  18. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/django_pfx.egg-info/dependency_links.txt +0 -0
  19. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/django_pfx.egg-info/requires.txt +0 -0
  20. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/django_pfx.egg-info/top_level.txt +0 -0
  21. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/doc/Makefile +0 -0
  22. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/doc/source/cookbook.md +0 -0
  23. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/doc/source/decorator.md +0 -0
  24. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/doc/source/getting_started.md +0 -0
  25. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/doc/source/model.md +0 -0
  26. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/doc/source/pfx_views.md +0 -0
  27. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/doc/source/testing.md +0 -0
  28. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/img/pfx.png +0 -0
  29. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/img/pfx.svg +0 -0
  30. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/__init__.py +0 -0
  31. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/__init__.py +0 -0
  32. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/apidoc/__init__.py +0 -0
  33. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/apidoc/parameters.py +0 -0
  34. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/apidoc/schema.py +0 -0
  35. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/apidoc/tags.py +0 -0
  36. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/apps.py +0 -0
  37. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/decorator/__init__.py +0 -0
  38. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/decorator/rest.py +0 -0
  39. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/default_settings.py +0 -0
  40. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/exceptions.py +0 -0
  41. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/fields.py +0 -0
  42. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/http/__init__.py +0 -0
  43. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/http/json_response.py +0 -0
  44. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/locale/fr/LC_MESSAGES/django.mo +0 -0
  45. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/locale/fr/LC_MESSAGES/django.po +0 -0
  46. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/management/__init__.py +0 -0
  47. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/management/commands/__init__.py +0 -0
  48. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/management/commands/makeapidoc.py +0 -0
  49. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/middleware/__init__.py +0 -0
  50. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/middleware/authentication.py +0 -0
  51. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/middleware/locale.py +0 -0
  52. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/models/__init__.py +0 -0
  53. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/models/cache_mixins.py +0 -0
  54. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/models/not_null_fields.py +0 -0
  55. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/models/pfx_models.py +0 -0
  56. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/models/user_filtered_queryset_mixin.py +0 -0
  57. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/serializers/__init__.py +0 -0
  58. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/serializers/json.py +0 -0
  59. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/settings.py +0 -0
  60. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/shortcuts.py +0 -0
  61. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/storage/__init__.py +0 -0
  62. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/storage/s3_storage.py +0 -0
  63. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/templates/registration/password_reset_email.txt +0 -0
  64. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/templates/registration/password_reset_subject.txt +0 -0
  65. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/templates/registration/welcome_email.txt +0 -0
  66. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/templates/registration/welcome_subject.txt +0 -0
  67. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/test.py +0 -0
  68. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/urls.py +0 -0
  69. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/__init__.py +0 -0
  70. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/authentication_views.py +0 -0
  71. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/fields.py +0 -0
  72. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/filters_views.py +0 -0
  73. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/locale_views.py +0 -0
  74. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/parameters/__init__.py +0 -0
  75. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/parameters/date_format.py +0 -0
  76. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/parameters/groups.py +0 -0
  77. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/parameters/list_count.py +0 -0
  78. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/parameters/list_items.py +0 -0
  79. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/parameters/list_mode.py +0 -0
  80. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/parameters/list_order.py +0 -0
  81. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/parameters/list_search.py +0 -0
  82. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/parameters/media_redirect.py +0 -0
  83. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/parameters/meta_fields.py +0 -0
  84. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/parameters/meta_filters.py +0 -0
  85. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/parameters/meta_orders.py +0 -0
  86. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/parameters/subset.py +0 -0
  87. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/parameters/subset_limit.py +0 -0
  88. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/parameters/subset_offset.py +0 -0
  89. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/parameters/subset_page.py +0 -0
  90. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/parameters/subset_page_size.py +0 -0
  91. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/parameters/subset_page_subset.py +0 -0
  92. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pfx/pfxcore/views/rest_views.py +0 -0
  93. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/pyproject.toml +0 -0
  94. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/requirements.txt +0 -0
  95. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/runtest.py +0 -0
  96. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/setup.cfg +0 -0
  97. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/setup.py +0 -0
  98. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/__init__.py +0 -0
  99. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/models.py +0 -0
  100. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/settings/__init__.py +0 -0
  101. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/settings/ci.py +0 -0
  102. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/settings/common.py +0 -0
  103. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/settings/dev.py +0 -0
  104. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/settings/dev_custom_example.py +0 -0
  105. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/settings/dev_default.py +0 -0
  106. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/tests/__init__.py +0 -0
  107. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/tests/basic_api_errors.py +0 -0
  108. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/tests/basic_api_test.py +0 -0
  109. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/tests/test_api_doc.py +0 -0
  110. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/tests/test_auth_api.py +0 -0
  111. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/tests/test_cache.py +0 -0
  112. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/tests/test_fields.py +0 -0
  113. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/tests/test_filters.py +0 -0
  114. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/tests/test_locale_api.py +0 -0
  115. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/tests/test_perm_tests.py +0 -0
  116. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/tests/test_perms_api.py +0 -0
  117. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/tests/test_shortcuts.py +0 -0
  118. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/tests/test_timezone_middleware.py +0 -0
  119. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/tests/test_tools.py +0 -0
  120. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/tests/test_user_queryset.py +0 -0
  121. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/tests/test_view_decorators.py +0 -0
  122. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/tests/test_view_fields.py +0 -0
  123. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/urls.py +0 -0
  124. {django-pfx-1.2.dev99 → django-pfx-1.2.dev103}/tests/views.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: django-pfx
3
- Version: 1.2.dev99
3
+ Version: 1.2.dev103
4
4
  Summary: Django PFX is a toolkit to build web APIs dedicated to be used by React progressive web app.
5
5
  Author: Hervé Martinet
6
6
  Author-email: herve.martinet@gmail.com
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: django-pfx
3
- Version: 1.2.dev99
3
+ Version: 1.2.dev103
4
4
  Summary: Django PFX is a toolkit to build web APIs dedicated to be used by React progressive web app.
5
5
  Author: Hervé Martinet
6
6
  Author-email: herve.martinet@gmail.com
@@ -17,6 +17,7 @@ django_pfx.egg-info/top_level.txt
17
17
  doc/Makefile
18
18
  doc/conf.py
19
19
  doc/index.rst
20
+ doc/source/api.views.rst
20
21
  doc/source/authentication.md
21
22
  doc/source/cookbook.md
22
23
  doc/source/decorator.md
@@ -24,7 +25,6 @@ doc/source/getting_started.md
24
25
  doc/source/internationalisation.md
25
26
  doc/source/model.md
26
27
  doc/source/pfx_views.md
27
- doc/source/pfxcore.views.rst
28
28
  doc/source/testing.md
29
29
  img/pfx.png
30
30
  img/pfx.svg
@@ -16,6 +16,8 @@ import sys
16
16
  import django
17
17
  from django.conf import settings
18
18
 
19
+ from sphinx.ext.autodoc import between
20
+
19
21
  sys.path.insert(0, os.path.abspath('../'))
20
22
  settings.configure(
21
23
  SECRET_KEY='something to make Django happy',
@@ -26,8 +28,16 @@ settings.configure(
26
28
  'pfx.pfxcore'])
27
29
  django.setup()
28
30
 
29
- # -- Project information -----------------------------------------------------
30
31
 
32
+ def setup(app):
33
+ # Register a sphinx.ext.autodoc.between listener to ignore everything
34
+ # between lines that contain --- and """ (yaml from apispec)
35
+ app.connect('autodoc-process-docstring',
36
+ between('^.*(---|""")$', exclude=True))
37
+ return app
38
+
39
+
40
+ # -- Project information -----------------------------------------------------
31
41
  project = 'Django PFX'
32
42
  copyright = '2021, Hervé Martinet, Nicolas Béraneck'
33
43
  author = 'Hervé Martinet, Nicolas Béraneck'
@@ -24,12 +24,12 @@ Topics
24
24
  source/getting_started
25
25
  source/decorator
26
26
  source/pfx_views
27
- source/pfxcore.views
28
27
  source/model
29
28
  source/internationalisation
30
29
  source/authentication
31
30
  source/cookbook
32
31
  source/testing
32
+ source/api.views
33
33
 
34
34
  Indices and tables
35
35
  ==================
@@ -0,0 +1,46 @@
1
+ API
2
+ =====================
3
+
4
+ The ``AuthenticationView`` class
5
+ ********************************
6
+ .. autoclass:: pfx.pfxcore.views.AuthenticationView
7
+ :members:
8
+ :undoc-members:
9
+ :show-inheritance:
10
+
11
+ The ``ForgottenPasswordView`` class
12
+ ***********************************
13
+ .. autoclass:: pfx.pfxcore.views.ForgottenPasswordView
14
+ :members:
15
+ :undoc-members:
16
+ :show-inheritance:
17
+
18
+ The ``DetailRestViewMixin`` class
19
+ *********************************
20
+ .. autoclass:: pfx.pfxcore.views.DetailRestViewMixin
21
+ :members:
22
+ :undoc-members:
23
+ :show-inheritance:
24
+
25
+ .. :inherited-members:
26
+
27
+ The ``LocaleMiddleware`` class
28
+ ******************************
29
+ .. autoclass:: pfx.pfxcore.middleware.LocaleMiddleware
30
+ :members:
31
+ :undoc-members:
32
+ :show-inheritance:
33
+
34
+ The ``LocaleRestView`` class
35
+ ****************************
36
+ .. autoclass:: pfx.pfxcore.views.LocaleRestView
37
+ :members:
38
+ :undoc-members:
39
+ :show-inheritance:
40
+
41
+ The ``ModelMixin`` class
42
+ ************************
43
+ .. autoclass:: pfx.pfxcore.views.ModelMixin
44
+ :members:
45
+ :undoc-members:
46
+ :show-inheritance:
@@ -0,0 +1,35 @@
1
+ # Authentication
2
+
3
+ ## Modes
4
+
5
+ There are 2 authentication modes: cookie and bearer token.
6
+ You can activate either or both by adding middleware:
7
+
8
+ * `'pfx.pfxcore.middleware.AuthenticationMiddleware'` (bearer token)
9
+ * `'pfx.pfxcore.middleware.CookieAuthenticationMiddleware'` (cookie)
10
+
11
+ To use the `CookieAuthenticationMiddleware`, you have to configure following settings:
12
+
13
+ * `PFX_COOKIE_DOMAIN`: the cookie domain
14
+ * `PFX_COOKIE_SECURE`: `Secure` attribute of the cookie (`True`/`False`)
15
+ * `PFX_COOKIE_SAMESITE`: `SameSite` attribute of the cookie (`'Strict'`/`'Lax'`/`'None'`)
16
+ * `PFX_TOKEN_SHORT_VALIDITY`: validity for short validity token (optional, default `{'hours': 12}`)
17
+ * `PFX_TOKEN_LONG_VALIDITY`: validity for long validity token (optional, default `{'days': 30}`)
18
+
19
+ `/auth/login?mode=jwt` will return a token for bearer token authentication.
20
+ `/auth/login?mode=cookie` will set and return the authentication cookie.
21
+
22
+ ## Authentication views
23
+
24
+ The following views provide standard services:
25
+
26
+ * `AuthenticationView`
27
+ * `/auth/login`
28
+ * `/auth/logout`
29
+ * `/auth/set-password`
30
+ * `/auth/change-password`
31
+ * `/auth/validate-user-token`
32
+ * `ForgottenPasswordView`
33
+ * `/auth/forgotten-password`
34
+
35
+ See the API doc for details.
@@ -0,0 +1,41 @@
1
+ # Internationalisation
2
+
3
+ ## Translated strings
4
+
5
+ Use Django's standard way of translating strings (verbose name, choices values, messages, ...).
6
+ PFX will use the translated values according to the requested language.
7
+
8
+ ## Specify available languages
9
+
10
+ In Django, `USE_I18N` must be `True` to use internationalization. Use `LANGUAGE_CODE` to set default locale.
11
+
12
+ You can optionally set `USE_L10N` to `True` (see Django documentation).
13
+
14
+ In Addition, you can set the list of available languages for web services with `LANGUAGES`:
15
+ ```
16
+ LANGUAGES = [
17
+ ('fr', "French"),
18
+ ('en', "English"),
19
+ ]
20
+ ```
21
+
22
+ You can use language only code of language and country.
23
+
24
+ Service responses will use the first language of `Accept-Language` present in `LANGUAGES`.
25
+ Use `X-Custom-Language` to force the use of a specific language.
26
+
27
+ ## LocaleRestView
28
+
29
+ The `LocaleRestView` exposes a service on `/locales/languages` which returns the list of
30
+ available languages.
31
+
32
+ ## LocaleMiddleware
33
+
34
+ To enable internationalization in services, you have to add `'pfx.pfxcore.middleware.LocaleMiddleware'`
35
+ in the `MIDDLEWARE` list.
36
+
37
+ This middleware will use:
38
+ * `LANGUAGES`, `LANGUAGE_CODE`, `Accept-Language` and `X-Custom-Language` to set the language.
39
+ * `TIME_ZONE` and `X-Custom-Timezone` sot set the timezone.
40
+
41
+ You can replace it by a custom middleware if you need another specific behavior.
@@ -1,8 +0,0 @@
1
- # Authentication
2
-
3
- TODO define content
4
-
5
- - AuthenticationMiddleware
6
- - AuthenticationView
7
- - SignupView
8
- - ForgotenPasswordView
@@ -1,5 +0,0 @@
1
- # Internationalisation
2
-
3
- - parameters
4
- - LocaleMiddleware
5
- - LocaleRestView
@@ -1,18 +0,0 @@
1
- Django PFX views
2
- =====================
3
-
4
- The ``DetailRestViewMixin`` class
5
- *********************************
6
- .. autoclass:: pfx.pfxcore.views.DetailRestViewMixin
7
- :members:
8
- :undoc-members:
9
- :show-inheritance:
10
-
11
- .. :inherited-members:
12
-
13
- The ``ModelMixin`` class
14
- *********************************
15
- .. autoclass:: pfx.pfxcore.views.ModelMixin
16
- :members:
17
- :undoc-members:
18
- :show-inheritance:
File without changes
File without changes