MCPcopy
hub / github.com/django/django / register_serializer

Function register_serializer

django/core/serializers/__init__.py:55–88  ·  view source on GitHub ↗

Register a new serializer. ``serializer_module`` should be the fully qualified module name for the serializer. If ``serializers`` is provided, the registration will be added to the provided dictionary. If ``serializers`` is not provided, the registration will be made direc

(format, serializer_module, serializers=None)

Source from the content-addressed store, hash-verified

53
54
55def register_serializer(format, serializer_module, serializers=None):
56 """Register a new serializer.
57
58 ``serializer_module`` should be the fully qualified module name
59 for the serializer.
60
61 If ``serializers`` is provided, the registration will be added
62 to the provided dictionary.
63
64 If ``serializers`` is not provided, the registration will be made
65 directly into the global register of serializers. Adding serializers
66 directly is not a thread-safe operation.
67 """
68 if serializers is None and not _serializers:
69 _load_serializers()
70
71 try:
72 module = importlib.import_module(serializer_module)
73 except ImportError as exc:
74 bad_serializer = BadSerializer(exc)
75
76 module = type(
77 "BadSerializerModule",
78 (),
79 {
80 "Deserializer": bad_serializer,
81 "Serializer": bad_serializer,
82 },
83 )
84
85 if serializers is None:
86 _serializers[format] = module
87 else:
88 serializers[format] = module
89
90
91def unregister_serializer(format):

Callers 1

_load_serializersFunction · 0.85

Calls 3

_load_serializersFunction · 0.85
BadSerializerClass · 0.85
import_moduleMethod · 0.80

Tested by

no test coverage detected