django-ninja-aio-crud 2.12.0__py3-none-any.whl → 2.12.2__py3-none-any.whl
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_ninja_aio_crud-2.12.0.dist-info → django_ninja_aio_crud-2.12.2.dist-info}/METADATA +1 -1
- {django_ninja_aio_crud-2.12.0.dist-info → django_ninja_aio_crud-2.12.2.dist-info}/RECORD +7 -7
- ninja_aio/__init__.py +1 -1
- ninja_aio/helpers/query.py +6 -1
- ninja_aio/models/serializers.py +4 -4
- {django_ninja_aio_crud-2.12.0.dist-info → django_ninja_aio_crud-2.12.2.dist-info}/WHEEL +0 -0
- {django_ninja_aio_crud-2.12.0.dist-info → django_ninja_aio_crud-2.12.2.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
ninja_aio/__init__.py,sha256=
|
|
1
|
+
ninja_aio/__init__.py,sha256=ihUONuP9N9lZBmmtYvlwROLf9Mtfi-2WzFHrx9WUkJ8,120
|
|
2
2
|
ninja_aio/api.py,sha256=tuC7vdvn7s1GkCnSFy9Kn1zv0glZfYptRQVvo8ZRtGQ,2429
|
|
3
3
|
ninja_aio/auth.py,sha256=4sWdFPjKiQgUL1d_CSGDblVjnY5ptP6LQha6XXdluJA,9157
|
|
4
4
|
ninja_aio/exceptions.py,sha256=_3xFqfFCOfrrMhSA0xbMqgXy8R0UQjhXaExrFvaDAjY,3891
|
|
@@ -12,9 +12,9 @@ ninja_aio/factory/__init__.py,sha256=IdH2z1ZZpv_IqonaDfVo7IsMzkgop6lHqz42RphUYBU
|
|
|
12
12
|
ninja_aio/factory/operations.py,sha256=OgWGqq4WJ4arSQrH9FGAby9kx-HTdS7MOITxHdYMk18,12051
|
|
13
13
|
ninja_aio/helpers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
14
14
|
ninja_aio/helpers/api.py,sha256=2beyexep-ehgaA_1bV5Yuh3zRDVcRCMkrW94nmfDWEA,20819
|
|
15
|
-
ninja_aio/helpers/query.py,sha256=
|
|
15
|
+
ninja_aio/helpers/query.py,sha256=Lqv4nrWYr543tC5K-SEcBottLID8cb83aDc26i2Wxj4,5053
|
|
16
16
|
ninja_aio/models/__init__.py,sha256=L3UQnQAlKoI3F7jinadL-Nn55hkPvnSRPYW0JtnbWFo,114
|
|
17
|
-
ninja_aio/models/serializers.py,sha256=
|
|
17
|
+
ninja_aio/models/serializers.py,sha256=SQQetFnHCVDe4IihSfwTQZMlCNeADQO6nP_uF6ltssc,38603
|
|
18
18
|
ninja_aio/models/utils.py,sha256=lAXtc3YY7_n4f0jIacX4DSXhUOzMy7y5MsBnInNxtfk,32874
|
|
19
19
|
ninja_aio/schemas/__init__.py,sha256=dHILiYBKMb51lDcyQdiXRw_0nzqM7Lu81UX2hv7kEfo,837
|
|
20
20
|
ninja_aio/schemas/api.py,sha256=dGUpJXR1iAf93QNR4kYj1uqIkTjiMfXultCotY6GtaQ,361
|
|
@@ -24,7 +24,7 @@ ninja_aio/schemas/helpers.py,sha256=Vti5BfHWpxaJXj_ixZBJb34VRwhHODrlVjRlIuHh_ug,
|
|
|
24
24
|
ninja_aio/views/__init__.py,sha256=DEzjWA6y3WF0V10nNF8eEurLNEodgxKzyFd09AqVp3s,148
|
|
25
25
|
ninja_aio/views/api.py,sha256=AAqkj0xT8J3PmJvsbluZ33cfrmrXJHiV9ARe2BqnfQ8,22492
|
|
26
26
|
ninja_aio/views/mixins.py,sha256=Zl6J8gbVagwT85bzDuKyJTk3iFxxFgX0YgYkjiUxZGg,17040
|
|
27
|
-
django_ninja_aio_crud-2.12.
|
|
28
|
-
django_ninja_aio_crud-2.12.
|
|
29
|
-
django_ninja_aio_crud-2.12.
|
|
30
|
-
django_ninja_aio_crud-2.12.
|
|
27
|
+
django_ninja_aio_crud-2.12.2.dist-info/licenses/LICENSE,sha256=yrDAYcm0gRp_Qyzo3GQa4BjYjWRkAhGC8QRva__RYq0,1073
|
|
28
|
+
django_ninja_aio_crud-2.12.2.dist-info/WHEEL,sha256=G2gURzTEtmeR8nrdXUJfNiB3VYVxigPQ-bEQujpNiNs,82
|
|
29
|
+
django_ninja_aio_crud-2.12.2.dist-info/METADATA,sha256=6c2s65B1mx6gZ6i2fE9xrfOYUxl1sYnALD148sMaB6M,9964
|
|
30
|
+
django_ninja_aio_crud-2.12.2.dist-info/RECORD,,
|
ninja_aio/__init__.py
CHANGED
ninja_aio/helpers/query.py
CHANGED
|
@@ -78,6 +78,11 @@ class QueryUtil:
|
|
|
78
78
|
self.detail_config: ModelQuerySetSchema = self._configs.get(
|
|
79
79
|
self.SCOPES.DETAIL, ModelQuerySetSchema()
|
|
80
80
|
)
|
|
81
|
+
# Fallback detail config to read config if not explicitly set
|
|
82
|
+
if not self.detail_config.select_related:
|
|
83
|
+
self.detail_config.select_related = self.read_config.select_related.copy()
|
|
84
|
+
if not self.detail_config.prefetch_related:
|
|
85
|
+
self.detail_config.prefetch_related = self.read_config.prefetch_related.copy()
|
|
81
86
|
|
|
82
87
|
def _get_config(self, conf_name: str) -> ModelQuerySetSchema:
|
|
83
88
|
"""Helper method to retrieve configuration attributes."""
|
|
@@ -103,7 +108,7 @@ class QueryUtil:
|
|
|
103
108
|
raise ValueError(
|
|
104
109
|
f"Invalid scope '{scope}' for QueryUtil. Supported scopes: {valid_scopes}"
|
|
105
110
|
)
|
|
106
|
-
config = self._configs.get(scope, ModelQuerySetSchema())
|
|
111
|
+
config: ModelQuerySetSchema = self._configs.get(scope, ModelQuerySetSchema())
|
|
107
112
|
if config.select_related:
|
|
108
113
|
queryset = queryset.select_related(*config.select_related)
|
|
109
114
|
if config.prefetch_related:
|
ninja_aio/models/serializers.py
CHANGED
|
@@ -424,10 +424,10 @@ class BaseSerializer:
|
|
|
424
424
|
@classmethod
|
|
425
425
|
def _warn_missing_relation_serializer(cls, field_name: str, model) -> None:
|
|
426
426
|
"""Emit warning for reverse relations without explicit serializer mapping."""
|
|
427
|
-
if
|
|
428
|
-
not
|
|
429
|
-
|
|
430
|
-
):
|
|
427
|
+
if (
|
|
428
|
+
not isinstance(model, ModelSerializerMeta)
|
|
429
|
+
and not getattr(settings, "NINJA_AIO_TESTING", False)
|
|
430
|
+
) or getattr(settings, "NINJA_AIO_RAISE_SERIALIZATION_WARNINGS", False):
|
|
431
431
|
warnings.warn(
|
|
432
432
|
f"{cls.__name__}: reverse relation '{field_name}' is listed in read fields "
|
|
433
433
|
"but has no entry in relations_serializers; it will be auto-resolved only "
|
|
File without changes
|
{django_ninja_aio_crud-2.12.0.dist-info → django_ninja_aio_crud-2.12.2.dist-info}/licenses/LICENSE
RENAMED
|
File without changes
|