django-pfx 1.7.2.dev2__tar.gz → 1.7.2.dev6__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.7.2.dev2 → django_pfx-1.7.2.dev6}/PKG-INFO +1 -1
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/django_pfx.egg-info/PKG-INFO +1 -1
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/locale/fr/LC_MESSAGES/django.po +5 -5
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/models/ordered_model_mixin.py +3 -1
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/fields.py +2 -1
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/rest_views.py +7 -4
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/basic_api_test.py +15 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_ordered_rest_view_mixin.py +18 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/.gitignore +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/.gitlab-ci.yml +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/.pre-commit-config.yaml +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/LICENSE +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/MANIFEST.in +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/README.md +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/django_pfx.egg-info/SOURCES.txt +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/django_pfx.egg-info/dependency_links.txt +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/django_pfx.egg-info/requires.txt +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/django_pfx.egg-info/top_level.txt +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/doc/Makefile +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/doc/conf.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/doc/index.rst +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/doc/source/api.views.rst +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/doc/source/authentication.md +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/doc/source/decorator.md +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/doc/source/generate_openapi.md +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/doc/source/getting_started.md +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/doc/source/internationalisation.md +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/doc/source/model.md +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/doc/source/pfx_views.md +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/doc/source/profiling.md +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/doc/source/settings.md +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/doc/source/testing.md +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/img/pfx.png +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/img/pfx.svg +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/make_messages +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/manage.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/apidoc/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/apidoc/parameters.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/apidoc/schema.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/apidoc/tags.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/apps.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/decorator/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/decorator/rest.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/default_settings.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/exceptions.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/fields/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/fields/decimal_field.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/fields/media_field.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/fields/minutes_duration_field.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/fields/rich_text_field.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/http/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/http/json_response.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/locale/fr/LC_MESSAGES/django.mo +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/management/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/management/commands/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/management/commands/makeapidoc.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/management/commands/profile.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/middleware/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/middleware/authentication.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/middleware/locale.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/middleware/profiling.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/migrations/0001_initial.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/migrations/0002_pfxpermissionsuser.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/migrations/0003_delete_pfxpermissionsuser.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/migrations/0004_alter_loginban_failed_counter_and_more.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/migrations/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/migrations/operations/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/migrations/operations/permissions.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/models/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/models/abstract_pfx_base_user.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/models/cache_mixins.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/models/login_ban.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/models/not_null_fields.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/models/otp_user_mixin.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/models/pfx_models.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/models/pfx_user.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/models/user_filtered_queryset_mixin.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/serializers/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/serializers/json.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/settings.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/shortcuts.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/storage/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/storage/exceptions.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/storage/local_storage.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/storage/s3_storage.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/templates/registration/otp_code_email.txt +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/templates/registration/otp_code_subject.txt +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/templates/registration/password_reset_email.txt +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/templates/registration/password_reset_subject.txt +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/templates/registration/welcome_email.txt +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/templates/registration/welcome_subject.txt +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/test.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/urls.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/authentication_views.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/filters_views.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/locale_views.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/media_rest_view_mixin.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/ordered_rest_view_mixin.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/date_format.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/groups.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/list_count.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/list_items.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/list_mode.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/list_order.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/list_search.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/media_redirect.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/meta_fields.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/meta_filters.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/meta_orders.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/subset.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/subset_limit.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/subset_offset.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/subset_page.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/subset_page_size.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/subset_page_subset.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/settings/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/settings/dev.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pyproject.toml +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/requirements.txt +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/serve-doc +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/setup.cfg +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/setup.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/apps.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/locale/fr/LC_MESSAGES/django.po +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/migrations/0001_initial.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/migrations/0002_alter_book_cover.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/migrations/0003_book_local_file.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/migrations/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/models.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/settings/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/settings/ci.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/settings/common.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/settings/dev.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/settings/dev_custom_example.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/settings/dev_default.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/basic_api_errors.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_api_doc.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_api_doc_search.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_auth_api.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_body_mixin.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_cache.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_client.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_fields_choices.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_fields_date.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_fields_decimal.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_fields_minutes_duration.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_fields_one2many.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_fields_rich_text.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_filters.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_locale_api.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_perm_tests.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_permissions.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_perms_api.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_post_migrate_groups_update.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_profiling_middleware.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_settings.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_shortcuts.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_timezone_middleware.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_tools.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_user_queryset.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_view_decorators.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_view_fields.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/urls.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/views.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_base_user/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_base_user/migrations/0001_initial.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_base_user/migrations/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_base_user/settings/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_base_user/settings/ci.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_base_user/settings/common.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_base_user/settings/dev.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_base_user/settings/dev_custom_example.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_base_user/settings/dev_default.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_base_user/tests/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_base_user/tests/test_api.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_base_user/tests/test_auth_api.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_base_user/urls.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_base_user/views.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_custom_user/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_custom_user/migrations/0001_initial.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_custom_user/migrations/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_custom_user/models.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_custom_user/settings/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_custom_user/settings/ci.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_custom_user/settings/common.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_custom_user/settings/dev.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_custom_user/settings/dev_custom_example.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_custom_user/settings/dev_default.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_custom_user/tests/__init__.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_custom_user/tests/test_api.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_custom_user/tests/test_auth_api.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_custom_user/urls.py +0 -0
- {django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_custom_user/views.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: django-pfx
|
|
3
|
-
Version: 1.7.2.
|
|
3
|
+
Version: 1.7.2.dev6
|
|
4
4
|
Summary: Django PFX is a toolkit designed to streamline the development of RESTful APIs using the Django framework.
|
|
5
5
|
Author: Hervé Martinet
|
|
6
6
|
Author-email: herve.martinet@gmail.com
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: django-pfx
|
|
3
|
-
Version: 1.7.2.
|
|
3
|
+
Version: 1.7.2.dev6
|
|
4
4
|
Summary: Django PFX is a toolkit designed to streamline the development of RESTful APIs using the Django framework.
|
|
5
5
|
Author: Hervé Martinet
|
|
6
6
|
Author-email: herve.martinet@gmail.com
|
|
@@ -7,7 +7,7 @@ msgid ""
|
|
|
7
7
|
msgstr ""
|
|
8
8
|
"Project-Id-Version: \n"
|
|
9
9
|
"Report-Msgid-Bugs-To: \n"
|
|
10
|
-
"POT-Creation-Date: 2026-
|
|
10
|
+
"POT-Creation-Date: 2026-04-02 16:13+0200\n"
|
|
11
11
|
"PO-Revision-Date: 2021-06-22 23:31+0200\n"
|
|
12
12
|
"Last-Translator: \n"
|
|
13
13
|
"Language-Team: \n"
|
|
@@ -286,23 +286,23 @@ msgstr "Le paramètre object est requis pour move={move}."
|
|
|
286
286
|
msgid "object {pk} does not exists in this move context."
|
|
287
287
|
msgstr "object {pk} n'existe pas dans ce contexte de déplacement."
|
|
288
288
|
|
|
289
|
-
#: views/rest_views.py:
|
|
289
|
+
#: views/rest_views.py:228 views/rest_views.py:393
|
|
290
290
|
#, python-brace-format
|
|
291
291
|
msgid "{obj} cannot be deleted because it is referenced by other objects."
|
|
292
292
|
msgstr ""
|
|
293
293
|
"{obj} ne peut pas être supprimé car il est référencé par d’autres objets."
|
|
294
294
|
|
|
295
|
-
#: views/rest_views.py:
|
|
295
|
+
#: views/rest_views.py:357
|
|
296
296
|
#, python-brace-format
|
|
297
297
|
msgid "{model} {obj} created."
|
|
298
298
|
msgstr "{model} {obj} créé."
|
|
299
299
|
|
|
300
|
-
#: views/rest_views.py:
|
|
300
|
+
#: views/rest_views.py:358
|
|
301
301
|
#, python-brace-format
|
|
302
302
|
msgid "{model} {obj} updated."
|
|
303
303
|
msgstr "{model} {obj} modifié."
|
|
304
304
|
|
|
305
|
-
#: views/rest_views.py:
|
|
305
|
+
#: views/rest_views.py:1289
|
|
306
306
|
#, python-brace-format
|
|
307
307
|
msgid "{model} {obj} deleted."
|
|
308
308
|
msgstr "{model} {obj} supprimé."
|
|
@@ -25,10 +25,12 @@ class OrderedModelMixin(models.Model):
|
|
|
25
25
|
super().clean_fields(exclude=exclude)
|
|
26
26
|
|
|
27
27
|
def save(self, *args, **kwargs):
|
|
28
|
+
created = bool(self.pk)
|
|
28
29
|
if not self.seq:
|
|
29
30
|
self.seq = self._order_default
|
|
30
31
|
super().save(*args, **kwargs)
|
|
31
|
-
if
|
|
32
|
+
if (not created and
|
|
33
|
+
self.__previous_ordered_by_values != self._ordered_by_values):
|
|
32
34
|
if self.ordered_default == 'first':
|
|
33
35
|
self.top()
|
|
34
36
|
else:
|
|
@@ -95,8 +95,12 @@ class ModelMixin():
|
|
|
95
95
|
"""
|
|
96
96
|
qs = self.apply_user_filter(
|
|
97
97
|
from_queryset or self.model._default_manager.all())
|
|
98
|
+
select_related = (
|
|
99
|
+
self.get_fields_select_related() | set(select_related or []))
|
|
98
100
|
if select_related:
|
|
99
101
|
qs = qs.select_related(*select_related)
|
|
102
|
+
prefetch_related = (
|
|
103
|
+
self.get_fields_prefetch_related() | set(prefetch_related or []))
|
|
100
104
|
if prefetch_related:
|
|
101
105
|
qs = qs.prefetch_related(*prefetch_related)
|
|
102
106
|
return qs
|
|
@@ -107,9 +111,7 @@ class ModelMixin():
|
|
|
107
111
|
:param \\**kwargs: Keyword arguments
|
|
108
112
|
:returns: A view model instance
|
|
109
113
|
"""
|
|
110
|
-
return get_object(self.get_queryset(
|
|
111
|
-
select_related=self.get_fields_select_related(),
|
|
112
|
-
prefetch_related=self.get_fields_prefetch_related()), **kwargs)
|
|
114
|
+
return get_object(self.get_queryset(), **kwargs)
|
|
113
115
|
|
|
114
116
|
def get_related_queryset(
|
|
115
117
|
self, related_model, select_related=None, prefetch_related=None):
|
|
@@ -146,7 +148,8 @@ class ModelMixin():
|
|
|
146
148
|
:returns: The queryset
|
|
147
149
|
:rtype: :class:`django.db.models.QuerySet`
|
|
148
150
|
"""
|
|
149
|
-
return self.get_queryset(
|
|
151
|
+
return self.get_queryset(
|
|
152
|
+
select_related=select_related, prefetch_related=prefetch_related)
|
|
150
153
|
|
|
151
154
|
@classmethod
|
|
152
155
|
def _process_fields(cls, fields):
|
|
@@ -708,6 +708,21 @@ class BasicAPITest(TestAssertMixin, TestCase):
|
|
|
708
708
|
response = self.client.get('/api/authors/slug/not-existent')
|
|
709
709
|
self.assertRC(response, 404)
|
|
710
710
|
|
|
711
|
+
def test_get_null_key_media_file(self):
|
|
712
|
+
response = self.client.get(f'/api/books/{self.author1_book1.pk}')
|
|
713
|
+
self.assertRC(response, 200)
|
|
714
|
+
self.assertJE(response, 'cover', None)
|
|
715
|
+
self.assertJE(response, 'local_file', None)
|
|
716
|
+
|
|
717
|
+
self.author1_book1.cover = dict(key=None)
|
|
718
|
+
self.author1_book1.local_file = dict(key=None)
|
|
719
|
+
self.author1_book1.save()
|
|
720
|
+
|
|
721
|
+
response = self.client.get(f'/api/books/{self.author1_book1.pk}')
|
|
722
|
+
self.assertRC(response, 200)
|
|
723
|
+
self.assertJE(response, 'cover', None)
|
|
724
|
+
self.assertJE(response, 'local_file', None)
|
|
725
|
+
|
|
711
726
|
def test_create(self):
|
|
712
727
|
response = self.client.post(
|
|
713
728
|
'/api/authors', dict(
|
|
@@ -316,6 +316,15 @@ class TestOrderedRestViewMixin(TestAssertMixin, TestCase):
|
|
|
316
316
|
order(OrderedModel),
|
|
317
317
|
[self.o3.pk, self.o1.pk, self.o2.pk])
|
|
318
318
|
|
|
319
|
+
response = self.client.post(
|
|
320
|
+
'/api/ordered?move=top', {'name': "Test"})
|
|
321
|
+
self.assertRC(response, 200)
|
|
322
|
+
o4_pk = self.get_val(response, 'pk')
|
|
323
|
+
|
|
324
|
+
self.assertEqual(
|
|
325
|
+
order(OrderedModel),
|
|
326
|
+
[o4_pk, self.o3.pk, self.o1.pk, self.o2.pk])
|
|
327
|
+
|
|
319
328
|
def test_top_by_name(self):
|
|
320
329
|
response = self.client.put(
|
|
321
330
|
f'/api/ordered-by-name/{self.obn3.pk}?move=top', {})
|
|
@@ -370,6 +379,15 @@ class TestOrderedRestViewMixin(TestAssertMixin, TestCase):
|
|
|
370
379
|
order(OrderedModel),
|
|
371
380
|
[self.o2.pk, self.o3.pk, self.o1.pk])
|
|
372
381
|
|
|
382
|
+
response = self.client.post(
|
|
383
|
+
'/api/ordered?move=bottom', {'name': "Test"})
|
|
384
|
+
self.assertRC(response, 200)
|
|
385
|
+
o4_pk = self.get_val(response, 'pk')
|
|
386
|
+
|
|
387
|
+
self.assertEqual(
|
|
388
|
+
order(OrderedModel),
|
|
389
|
+
[self.o2.pk, self.o3.pk, self.o1.pk, o4_pk])
|
|
390
|
+
|
|
373
391
|
def test_bottom_by_name(self):
|
|
374
392
|
response = self.client.put(
|
|
375
393
|
f'/api/ordered-by-name/{self.obn2.pk}?move=bottom', {})
|
|
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.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/fields/minutes_duration_field.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/management/commands/makeapidoc.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/migrations/0002_pfxpermissionsuser.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/migrations/operations/__init__.py
RENAMED
|
File without changes
|
{django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/migrations/operations/permissions.py
RENAMED
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/models/abstract_pfx_base_user.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/templates/registration/welcome_email.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
|
{django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/ordered_rest_view_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.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/media_redirect.py
RENAMED
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/meta_filters.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/subset_limit.py
RENAMED
|
File without changes
|
{django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/subset_offset.py
RENAMED
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/pfx/pfxcore/views/parameters/subset_page_size.py
RENAMED
|
File without changes
|
{django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests/tests/test_post_migrate_groups_update.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
|
{django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_base_user/settings/dev_custom_example.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.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_custom_user/migrations/0001_initial.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_pfx-1.7.2.dev2 → django_pfx-1.7.2.dev6}/tests_custom_user/settings/dev_custom_example.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|