drf-react-by-schema 0.26.2__tar.gz → 0.26.4__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.
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/PKG-INFO +1 -1
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/serializers.py +9 -2
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/utils.py +7 -2
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema.egg-info/PKG-INFO +1 -1
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/setup.cfg +1 -1
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/LICENSE +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/MANIFEST.in +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/README.rst +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/__init__.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/admin.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/apps.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/autocomplete_serializers.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/autocomplete_viewsets.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/fields/__init__.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/fields/array.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/fields/boolean.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/fields/date.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/fields/file.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/fields/number.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/fields/relational.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/fields/serializers.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/fields/text.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/filters.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/management/__init__.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/management/commands/__init__.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/management/commands/sync_react.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/metadata.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/migrations/__init__.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/mixins.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/models.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/pagination.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/patches/__init__.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/patches/drf_serializers.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/renderers.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/tests.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/typescript_generator.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/urls.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/utils_cache.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/viewsets.py +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema.egg-info/SOURCES.txt +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema.egg-info/dependency_links.txt +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema.egg-info/requires.txt +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema.egg-info/top_level.txt +0 -0
- {drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/setup.py +0 -0
{drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/serializers.py
RENAMED
|
@@ -204,8 +204,15 @@ class GenericSerializer(
|
|
|
204
204
|
info = model_meta.get_field_info(ModelClass)
|
|
205
205
|
many_to_many = {}
|
|
206
206
|
for field_name, relation_info in info.relations.items():
|
|
207
|
-
if relation_info.to_many
|
|
208
|
-
|
|
207
|
+
if relation_info.to_many:
|
|
208
|
+
field_to_remove = None
|
|
209
|
+
if field_name in validated_data:
|
|
210
|
+
field_to_remove = field_name
|
|
211
|
+
elif f"{field_name}_id" in validated_data:
|
|
212
|
+
field_to_remove = f"{field_name}_id"
|
|
213
|
+
|
|
214
|
+
if field_to_remove:
|
|
215
|
+
many_to_many[field_to_remove] = validated_data.pop(field_to_remove)
|
|
209
216
|
|
|
210
217
|
try:
|
|
211
218
|
instance = ModelClass._default_manager.create(**validated_data)
|
|
@@ -235,12 +235,17 @@ def serializer_to_model_fields(view, fields_raw):
|
|
|
235
235
|
|
|
236
236
|
|
|
237
237
|
def apply_data_grid_filter(view, qs, column_field, operator_value, value):
|
|
238
|
+
is_direct_model_field = "__" in column_field
|
|
239
|
+
|
|
238
240
|
column_field_serializer = view.serializer_class().fields.get(column_field, None)
|
|
239
241
|
|
|
240
|
-
if column_field_serializer is None:
|
|
242
|
+
if column_field_serializer is None and not is_direct_model_field:
|
|
241
243
|
return qs
|
|
242
244
|
|
|
243
|
-
|
|
245
|
+
if is_direct_model_field:
|
|
246
|
+
target_field = column_field
|
|
247
|
+
else:
|
|
248
|
+
target_field = serializer_to_model_field(view, column_field_serializer)
|
|
244
249
|
|
|
245
250
|
if target_field is None:
|
|
246
251
|
return qs
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/fields/__init__.py
RENAMED
|
File without changes
|
{drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/fields/array.py
RENAMED
|
File without changes
|
{drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/fields/boolean.py
RENAMED
|
File without changes
|
{drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/fields/date.py
RENAMED
|
File without changes
|
{drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/fields/file.py
RENAMED
|
File without changes
|
{drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/fields/number.py
RENAMED
|
File without changes
|
{drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/fields/relational.py
RENAMED
|
File without changes
|
{drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/fields/serializers.py
RENAMED
|
File without changes
|
{drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/fields/text.py
RENAMED
|
File without changes
|
|
File without changes
|
{drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/management/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/migrations/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/patches/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema/utils_cache.py
RENAMED
|
File without changes
|
|
File without changes
|
{drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
{drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema.egg-info/requires.txt
RENAMED
|
File without changes
|
{drf_react_by_schema-0.26.2 → drf_react_by_schema-0.26.4}/drf_react_by_schema.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|