django-pfx 1.2.dev135__tar.gz → 1.3.dev4__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.
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/.gitlab-ci.yml +6 -7
- django-pfx-1.3.dev4/PKG-INFO +68 -0
- django-pfx-1.3.dev4/README.md +30 -0
- django-pfx-1.3.dev4/django_pfx.egg-info/PKG-INFO +68 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/django_pfx.egg-info/requires.txt +1 -1
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/doc/index.rst +2 -2
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/models/pfx_models.py +2 -2
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/requirements.txt +4 -1
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/setup.cfg +3 -2
- django-pfx-1.2.dev135/PKG-INFO +0 -50
- django-pfx-1.2.dev135/README.md +0 -13
- django-pfx-1.2.dev135/django_pfx.egg-info/PKG-INFO +0 -50
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/.gitignore +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/.pre-commit-config.yaml +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/LICENSE +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/MANIFEST.in +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/django_pfx.egg-info/SOURCES.txt +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/django_pfx.egg-info/dependency_links.txt +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/django_pfx.egg-info/top_level.txt +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/doc/Makefile +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/doc/conf.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/doc/source/api.views.rst +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/doc/source/authentication.md +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/doc/source/decorator.md +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/doc/source/generate_openapi.md +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/doc/source/getting_started.md +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/doc/source/internationalisation.md +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/doc/source/model.md +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/doc/source/pfx_views.md +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/doc/source/profiling.md +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/doc/source/settings.md +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/doc/source/testing.md +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/img/pfx.png +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/img/pfx.svg +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/__init__.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/__init__.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/apidoc/__init__.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/apidoc/parameters.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/apidoc/schema.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/apidoc/tags.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/apps.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/decorator/__init__.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/decorator/rest.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/default_settings.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/exceptions.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/fields.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/http/__init__.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/http/json_response.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/locale/fr/LC_MESSAGES/django.mo +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/locale/fr/LC_MESSAGES/django.po +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/management/__init__.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/management/commands/__init__.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/management/commands/makeapidoc.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/management/commands/profile.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/middleware/__init__.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/middleware/authentication.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/middleware/locale.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/middleware/profiling.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/models/__init__.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/models/cache_mixins.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/models/not_null_fields.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/models/user_filtered_queryset_mixin.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/serializers/__init__.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/serializers/json.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/settings.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/shortcuts.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/storage/__init__.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/storage/s3_storage.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/templates/registration/password_reset_email.txt +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/templates/registration/password_reset_subject.txt +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/templates/registration/welcome_email.txt +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/templates/registration/welcome_subject.txt +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/test.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/urls.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/__init__.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/authentication_views.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/fields.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/filters_views.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/locale_views.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/__init__.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/date_format.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/groups.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/list_count.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/list_items.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/list_mode.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/list_order.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/list_search.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/media_redirect.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/meta_fields.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/meta_filters.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/meta_orders.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/subset.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/subset_limit.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/subset_offset.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/subset_page.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/subset_page_size.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/subset_page_subset.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/rest_views.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pyproject.toml +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/runtest.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/serve-doc +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/setup.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/__init__.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/models.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/settings/__init__.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/settings/ci.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/settings/common.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/settings/dev.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/settings/dev_custom_example.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/settings/dev_default.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/tests/__init__.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/tests/basic_api_errors.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/tests/basic_api_test.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/tests/test_api_doc.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/tests/test_auth_api.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/tests/test_cache.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/tests/test_client.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/tests/test_fields.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/tests/test_filters.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/tests/test_locale_api.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/tests/test_perm_tests.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/tests/test_perms_api.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/tests/test_profiling_middleware.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/tests/test_shortcuts.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/tests/test_timezone_middleware.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/tests/test_tools.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/tests/test_user_queryset.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/tests/test_view_decorators.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/tests/test_view_fields.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/urls.py +0 -0
- {django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/tests/views.py +0 -0
|
@@ -49,10 +49,7 @@ test:
|
|
|
49
49
|
path: coverage.xml
|
|
50
50
|
parallel:
|
|
51
51
|
matrix:
|
|
52
|
-
- DJANGO_VERSION: '
|
|
53
|
-
- DJANGO_VERSION: 'Django>=3.2,<4.0'
|
|
54
|
-
- DJANGO_VERSION: 'Django>=4.0,<5.0'
|
|
55
|
-
- DJANGO_VERSION: 'Django>=4.2.*' # LTS
|
|
52
|
+
- DJANGO_VERSION: 'django==4.2.*' # LTS
|
|
56
53
|
|
|
57
54
|
build doc:
|
|
58
55
|
stage: build
|
|
@@ -85,9 +82,11 @@ pages:
|
|
|
85
82
|
- master
|
|
86
83
|
|
|
87
84
|
package:
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
85
|
+
rules:
|
|
86
|
+
- if: $CI_COMMIT_TAG =~ /^\d+\.\d+$/
|
|
87
|
+
when: on_success
|
|
88
|
+
- if: $CI_COMMIT_BRANCH == "master"
|
|
89
|
+
when: on_success
|
|
91
90
|
script:
|
|
92
91
|
- apt-get update
|
|
93
92
|
- apt-get install -y gettext
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: django-pfx
|
|
3
|
+
Version: 1.3.dev4
|
|
4
|
+
Summary: Django PFX is a toolkit designed to streamline the development of RESTful APIs using the Django framework.
|
|
5
|
+
Author: Hervé Martinet
|
|
6
|
+
Author-email: herve.martinet@gmail.com
|
|
7
|
+
License: BSD-3-Clause
|
|
8
|
+
Project-URL: Source, https://gitlab.com/pfx4/django-pfx
|
|
9
|
+
Project-URL: Tracker, https://gitlab.com/pfx4/django-pfx/-/issues
|
|
10
|
+
Project-URL: Documentation, https://pfx4.gitlab.io/django-pfx/doc/
|
|
11
|
+
Classifier: Environment :: Web Environment
|
|
12
|
+
Classifier: Framework :: Django
|
|
13
|
+
Classifier: Framework :: Django :: 3.2
|
|
14
|
+
Classifier: Framework :: Django :: 4.2
|
|
15
|
+
Classifier: Intended Audience :: Developers
|
|
16
|
+
Classifier: License :: OSI Approved :: BSD License
|
|
17
|
+
Classifier: Operating System :: OS Independent
|
|
18
|
+
Classifier: Programming Language :: Python
|
|
19
|
+
Classifier: Programming Language :: Python :: 3
|
|
20
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.6
|
|
22
|
+
Classifier: Programming Language :: Python :: 3.7
|
|
23
|
+
Classifier: Programming Language :: Python :: 3.8
|
|
24
|
+
Classifier: Topic :: Internet :: WWW/HTTP
|
|
25
|
+
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
|
|
26
|
+
Description-Content-Type: text/markdown
|
|
27
|
+
License-File: LICENSE
|
|
28
|
+
Requires-Dist: django<5.0,>=4.2
|
|
29
|
+
Requires-Dist: django-cors-headers
|
|
30
|
+
Requires-Dist: django_json_widget
|
|
31
|
+
Requires-Dist: pyjwt>=2.1
|
|
32
|
+
Requires-Dist: Babel
|
|
33
|
+
Requires-Dist: boto3
|
|
34
|
+
Requires-Dist: apispec
|
|
35
|
+
Requires-Dist: pyyaml
|
|
36
|
+
Requires-Dist: pytz
|
|
37
|
+
Requires-Dist: dill
|
|
38
|
+
|
|
39
|
+
# Django PFX
|
|
40
|
+
|
|
41
|
+
[](https://gitlab.com/pfx4/django-pfx/-/commits/master)
|
|
42
|
+
[](https://pfx4.gitlab.io/django-pfx/coverage)
|
|
43
|
+
|
|
44
|
+
![logo]
|
|
45
|
+
|
|
46
|
+
Django PFX is a toolkit designed to streamline the development of RESTful APIs
|
|
47
|
+
using the Django framework, leveraging views and the ORM (Object-Relational Mapping).
|
|
48
|
+
With a focus on simplicity and efficiency, Django PFX enables developers to rapidly
|
|
49
|
+
create robust web service APIs for web applications and simplifies the testing process.
|
|
50
|
+
|
|
51
|
+
> From version 1.3 PFX is only compatible with Django 4.2 LTS,
|
|
52
|
+
> please use version 1.2 for older Django versions.
|
|
53
|
+
|
|
54
|
+
### Key Features:
|
|
55
|
+
- Predefined CRUD API (but customizable)
|
|
56
|
+
- Internationalization
|
|
57
|
+
- Authentication & Authorization
|
|
58
|
+
- JSON-only RESTful API
|
|
59
|
+
- Flexibility
|
|
60
|
+
- Tests & Profiling Tools
|
|
61
|
+
- Automatic Open API Documentation
|
|
62
|
+
|
|
63
|
+
### Links
|
|
64
|
+
- [Source](https://gitlab.com/pfx4/django-pfx)
|
|
65
|
+
- [Issue tracker](https://gitlab.com/pfx4/django-pfx/-/issues)
|
|
66
|
+
- [Documentation](https://pfx4.gitlab.io/django-pfx/doc/)
|
|
67
|
+
|
|
68
|
+
[logo]: https://gitlab.com/pfx4/django-pfx/-/raw/master/img/pfx.png "PFX"
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Django PFX
|
|
2
|
+
|
|
3
|
+
[](https://gitlab.com/pfx4/django-pfx/-/commits/master)
|
|
4
|
+
[](https://pfx4.gitlab.io/django-pfx/coverage)
|
|
5
|
+
|
|
6
|
+
![logo]
|
|
7
|
+
|
|
8
|
+
Django PFX is a toolkit designed to streamline the development of RESTful APIs
|
|
9
|
+
using the Django framework, leveraging views and the ORM (Object-Relational Mapping).
|
|
10
|
+
With a focus on simplicity and efficiency, Django PFX enables developers to rapidly
|
|
11
|
+
create robust web service APIs for web applications and simplifies the testing process.
|
|
12
|
+
|
|
13
|
+
> From version 1.3 PFX is only compatible with Django 4.2 LTS,
|
|
14
|
+
> please use version 1.2 for older Django versions.
|
|
15
|
+
|
|
16
|
+
### Key Features:
|
|
17
|
+
- Predefined CRUD API (but customizable)
|
|
18
|
+
- Internationalization
|
|
19
|
+
- Authentication & Authorization
|
|
20
|
+
- JSON-only RESTful API
|
|
21
|
+
- Flexibility
|
|
22
|
+
- Tests & Profiling Tools
|
|
23
|
+
- Automatic Open API Documentation
|
|
24
|
+
|
|
25
|
+
### Links
|
|
26
|
+
- [Source](https://gitlab.com/pfx4/django-pfx)
|
|
27
|
+
- [Issue tracker](https://gitlab.com/pfx4/django-pfx/-/issues)
|
|
28
|
+
- [Documentation](https://pfx4.gitlab.io/django-pfx/doc/)
|
|
29
|
+
|
|
30
|
+
[logo]: https://gitlab.com/pfx4/django-pfx/-/raw/master/img/pfx.png "PFX"
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: django-pfx
|
|
3
|
+
Version: 1.3.dev4
|
|
4
|
+
Summary: Django PFX is a toolkit designed to streamline the development of RESTful APIs using the Django framework.
|
|
5
|
+
Author: Hervé Martinet
|
|
6
|
+
Author-email: herve.martinet@gmail.com
|
|
7
|
+
License: BSD-3-Clause
|
|
8
|
+
Project-URL: Source, https://gitlab.com/pfx4/django-pfx
|
|
9
|
+
Project-URL: Tracker, https://gitlab.com/pfx4/django-pfx/-/issues
|
|
10
|
+
Project-URL: Documentation, https://pfx4.gitlab.io/django-pfx/doc/
|
|
11
|
+
Classifier: Environment :: Web Environment
|
|
12
|
+
Classifier: Framework :: Django
|
|
13
|
+
Classifier: Framework :: Django :: 3.2
|
|
14
|
+
Classifier: Framework :: Django :: 4.2
|
|
15
|
+
Classifier: Intended Audience :: Developers
|
|
16
|
+
Classifier: License :: OSI Approved :: BSD License
|
|
17
|
+
Classifier: Operating System :: OS Independent
|
|
18
|
+
Classifier: Programming Language :: Python
|
|
19
|
+
Classifier: Programming Language :: Python :: 3
|
|
20
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.6
|
|
22
|
+
Classifier: Programming Language :: Python :: 3.7
|
|
23
|
+
Classifier: Programming Language :: Python :: 3.8
|
|
24
|
+
Classifier: Topic :: Internet :: WWW/HTTP
|
|
25
|
+
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
|
|
26
|
+
Description-Content-Type: text/markdown
|
|
27
|
+
License-File: LICENSE
|
|
28
|
+
Requires-Dist: django<5.0,>=4.2
|
|
29
|
+
Requires-Dist: django-cors-headers
|
|
30
|
+
Requires-Dist: django_json_widget
|
|
31
|
+
Requires-Dist: pyjwt>=2.1
|
|
32
|
+
Requires-Dist: Babel
|
|
33
|
+
Requires-Dist: boto3
|
|
34
|
+
Requires-Dist: apispec
|
|
35
|
+
Requires-Dist: pyyaml
|
|
36
|
+
Requires-Dist: pytz
|
|
37
|
+
Requires-Dist: dill
|
|
38
|
+
|
|
39
|
+
# Django PFX
|
|
40
|
+
|
|
41
|
+
[](https://gitlab.com/pfx4/django-pfx/-/commits/master)
|
|
42
|
+
[](https://pfx4.gitlab.io/django-pfx/coverage)
|
|
43
|
+
|
|
44
|
+
![logo]
|
|
45
|
+
|
|
46
|
+
Django PFX is a toolkit designed to streamline the development of RESTful APIs
|
|
47
|
+
using the Django framework, leveraging views and the ORM (Object-Relational Mapping).
|
|
48
|
+
With a focus on simplicity and efficiency, Django PFX enables developers to rapidly
|
|
49
|
+
create robust web service APIs for web applications and simplifies the testing process.
|
|
50
|
+
|
|
51
|
+
> From version 1.3 PFX is only compatible with Django 4.2 LTS,
|
|
52
|
+
> please use version 1.2 for older Django versions.
|
|
53
|
+
|
|
54
|
+
### Key Features:
|
|
55
|
+
- Predefined CRUD API (but customizable)
|
|
56
|
+
- Internationalization
|
|
57
|
+
- Authentication & Authorization
|
|
58
|
+
- JSON-only RESTful API
|
|
59
|
+
- Flexibility
|
|
60
|
+
- Tests & Profiling Tools
|
|
61
|
+
- Automatic Open API Documentation
|
|
62
|
+
|
|
63
|
+
### Links
|
|
64
|
+
- [Source](https://gitlab.com/pfx4/django-pfx)
|
|
65
|
+
- [Issue tracker](https://gitlab.com/pfx4/django-pfx/-/issues)
|
|
66
|
+
- [Documentation](https://pfx4.gitlab.io/django-pfx/doc/)
|
|
67
|
+
|
|
68
|
+
[logo]: https://gitlab.com/pfx4/django-pfx/-/raw/master/img/pfx.png "PFX"
|
|
@@ -66,7 +66,7 @@ class JSONReprMixin():
|
|
|
66
66
|
class ErrorMessageMixin():
|
|
67
67
|
"""A model mixin to improve mode validation errors."""
|
|
68
68
|
|
|
69
|
-
def
|
|
69
|
+
def validate_constraints(self, exclude=None):
|
|
70
70
|
"""Override validate_unique to allow to customize error message
|
|
71
71
|
for :class:`UniqueConstraint`.
|
|
72
72
|
"""
|
|
@@ -79,7 +79,7 @@ class ErrorMessageMixin():
|
|
|
79
79
|
return v
|
|
80
80
|
|
|
81
81
|
try:
|
|
82
|
-
return super().
|
|
82
|
+
return super().validate_constraints(exclude=exclude)
|
|
83
83
|
except ValidationError as e:
|
|
84
84
|
errors = e.update_error_dict({})
|
|
85
85
|
non_field_errors = []
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[metadata]
|
|
2
2
|
name = django-pfx
|
|
3
|
-
description = Django PFX is a toolkit to
|
|
3
|
+
description = Django PFX is a toolkit designed to streamline the development of RESTful APIs using the Django framework.
|
|
4
4
|
long_description = file: README.md
|
|
5
5
|
long_description_content_type = text/markdown
|
|
6
6
|
project_urls =
|
|
@@ -14,6 +14,7 @@ classifiers =
|
|
|
14
14
|
Environment :: Web Environment
|
|
15
15
|
Framework :: Django
|
|
16
16
|
Framework :: Django :: 3.2
|
|
17
|
+
Framework :: Django :: 4.2
|
|
17
18
|
Intended Audience :: Developers
|
|
18
19
|
License :: OSI Approved :: BSD License
|
|
19
20
|
Operating System :: OS Independent
|
|
@@ -30,7 +31,7 @@ classifiers =
|
|
|
30
31
|
packages = find_namespace:
|
|
31
32
|
include_package_data = true
|
|
32
33
|
install_requires =
|
|
33
|
-
django>=
|
|
34
|
+
django>=4.2,<5.0
|
|
34
35
|
django-cors-headers
|
|
35
36
|
django_json_widget
|
|
36
37
|
pyjwt>=2.1
|
django-pfx-1.2.dev135/PKG-INFO
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.1
|
|
2
|
-
Name: django-pfx
|
|
3
|
-
Version: 1.2.dev135
|
|
4
|
-
Summary: Django PFX is a toolkit to build rest APIs with the Django framework.
|
|
5
|
-
Author: Hervé Martinet
|
|
6
|
-
Author-email: herve.martinet@gmail.com
|
|
7
|
-
License: BSD-3-Clause
|
|
8
|
-
Project-URL: Source, https://gitlab.com/pfx4/django-pfx
|
|
9
|
-
Project-URL: Tracker, https://gitlab.com/pfx4/django-pfx/-/issues
|
|
10
|
-
Project-URL: Documentation, https://pfx4.gitlab.io/django-pfx/doc/
|
|
11
|
-
Classifier: Environment :: Web Environment
|
|
12
|
-
Classifier: Framework :: Django
|
|
13
|
-
Classifier: Framework :: Django :: 3.2
|
|
14
|
-
Classifier: Intended Audience :: Developers
|
|
15
|
-
Classifier: License :: OSI Approved :: BSD License
|
|
16
|
-
Classifier: Operating System :: OS Independent
|
|
17
|
-
Classifier: Programming Language :: Python
|
|
18
|
-
Classifier: Programming Language :: Python :: 3
|
|
19
|
-
Classifier: Programming Language :: Python :: 3 :: Only
|
|
20
|
-
Classifier: Programming Language :: Python :: 3.6
|
|
21
|
-
Classifier: Programming Language :: Python :: 3.7
|
|
22
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
23
|
-
Classifier: Topic :: Internet :: WWW/HTTP
|
|
24
|
-
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
|
|
25
|
-
Description-Content-Type: text/markdown
|
|
26
|
-
License-File: LICENSE
|
|
27
|
-
Requires-Dist: django<5.0,>=3.2
|
|
28
|
-
Requires-Dist: django-cors-headers
|
|
29
|
-
Requires-Dist: django_json_widget
|
|
30
|
-
Requires-Dist: pyjwt>=2.1
|
|
31
|
-
Requires-Dist: Babel
|
|
32
|
-
Requires-Dist: boto3
|
|
33
|
-
Requires-Dist: apispec
|
|
34
|
-
Requires-Dist: pyyaml
|
|
35
|
-
Requires-Dist: pytz
|
|
36
|
-
Requires-Dist: dill
|
|
37
|
-
|
|
38
|
-
# Django PFX
|
|
39
|
-
|
|
40
|
-
![pipeline]
|
|
41
|
-
![coverage]
|
|
42
|
-
|
|
43
|
-
![logo]
|
|
44
|
-
|
|
45
|
-
Django PFX is a toolkit to build rest APIs with the Django framework.
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
[logo]: https://gitlab.com/hmartinet/django-pfx/-/raw/master/img/pfx.png "PFX"
|
|
49
|
-
[pipeline]: https://gitlab.com/hmartinet/django-pfx/badges/master/pipeline.svg "Pipeline Status"
|
|
50
|
-
[coverage]: https://gitlab.com/hmartinet/django-pfx/badges/master/coverage.svg "Code Coverage"
|
django-pfx-1.2.dev135/README.md
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
# Django PFX
|
|
2
|
-
|
|
3
|
-
![pipeline]
|
|
4
|
-
![coverage]
|
|
5
|
-
|
|
6
|
-
![logo]
|
|
7
|
-
|
|
8
|
-
Django PFX is a toolkit to build rest APIs with the Django framework.
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
[logo]: https://gitlab.com/hmartinet/django-pfx/-/raw/master/img/pfx.png "PFX"
|
|
12
|
-
[pipeline]: https://gitlab.com/hmartinet/django-pfx/badges/master/pipeline.svg "Pipeline Status"
|
|
13
|
-
[coverage]: https://gitlab.com/hmartinet/django-pfx/badges/master/coverage.svg "Code Coverage"
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.1
|
|
2
|
-
Name: django-pfx
|
|
3
|
-
Version: 1.2.dev135
|
|
4
|
-
Summary: Django PFX is a toolkit to build rest APIs with the Django framework.
|
|
5
|
-
Author: Hervé Martinet
|
|
6
|
-
Author-email: herve.martinet@gmail.com
|
|
7
|
-
License: BSD-3-Clause
|
|
8
|
-
Project-URL: Source, https://gitlab.com/pfx4/django-pfx
|
|
9
|
-
Project-URL: Tracker, https://gitlab.com/pfx4/django-pfx/-/issues
|
|
10
|
-
Project-URL: Documentation, https://pfx4.gitlab.io/django-pfx/doc/
|
|
11
|
-
Classifier: Environment :: Web Environment
|
|
12
|
-
Classifier: Framework :: Django
|
|
13
|
-
Classifier: Framework :: Django :: 3.2
|
|
14
|
-
Classifier: Intended Audience :: Developers
|
|
15
|
-
Classifier: License :: OSI Approved :: BSD License
|
|
16
|
-
Classifier: Operating System :: OS Independent
|
|
17
|
-
Classifier: Programming Language :: Python
|
|
18
|
-
Classifier: Programming Language :: Python :: 3
|
|
19
|
-
Classifier: Programming Language :: Python :: 3 :: Only
|
|
20
|
-
Classifier: Programming Language :: Python :: 3.6
|
|
21
|
-
Classifier: Programming Language :: Python :: 3.7
|
|
22
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
23
|
-
Classifier: Topic :: Internet :: WWW/HTTP
|
|
24
|
-
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
|
|
25
|
-
Description-Content-Type: text/markdown
|
|
26
|
-
License-File: LICENSE
|
|
27
|
-
Requires-Dist: django<5.0,>=3.2
|
|
28
|
-
Requires-Dist: django-cors-headers
|
|
29
|
-
Requires-Dist: django_json_widget
|
|
30
|
-
Requires-Dist: pyjwt>=2.1
|
|
31
|
-
Requires-Dist: Babel
|
|
32
|
-
Requires-Dist: boto3
|
|
33
|
-
Requires-Dist: apispec
|
|
34
|
-
Requires-Dist: pyyaml
|
|
35
|
-
Requires-Dist: pytz
|
|
36
|
-
Requires-Dist: dill
|
|
37
|
-
|
|
38
|
-
# Django PFX
|
|
39
|
-
|
|
40
|
-
![pipeline]
|
|
41
|
-
![coverage]
|
|
42
|
-
|
|
43
|
-
![logo]
|
|
44
|
-
|
|
45
|
-
Django PFX is a toolkit to build rest APIs with the Django framework.
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
[logo]: https://gitlab.com/hmartinet/django-pfx/-/raw/master/img/pfx.png "PFX"
|
|
49
|
-
[pipeline]: https://gitlab.com/hmartinet/django-pfx/badges/master/pipeline.svg "Pipeline Status"
|
|
50
|
-
[coverage]: https://gitlab.com/hmartinet/django-pfx/badges/master/coverage.svg "Code Coverage"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/models/user_filtered_queryset_mixin.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/templates/registration/welcome_email.txt
RENAMED
|
File without changes
|
{django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/templates/registration/welcome_subject.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/media_redirect.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/subset_page_size.py
RENAMED
|
File without changes
|
{django-pfx-1.2.dev135 → django-pfx-1.3.dev4}/pfx/pfxcore/views/parameters/subset_page_subset.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|