(
self,
value: T | dict | list | str | bytes | None,
instance: type[Model] | Model,
)
| 757 | self.field_type = field_type |
| 758 | |
| 759 | def to_db_value( |
| 760 | self, |
| 761 | value: T | dict | list | str | bytes | None, |
| 762 | instance: type[Model] | Model, |
| 763 | ) -> str | None: |
| 764 | self.validate(value) |
| 765 | if value is None: |
| 766 | return None |
| 767 | |
| 768 | if isinstance(value, (str, bytes)): |
| 769 | try: |
| 770 | self.decoder(value) |
| 771 | except Exception: |
| 772 | raise FieldError(f"Value {value!r} is invalid json value.") |
| 773 | if isinstance(value, bytes): |
| 774 | return value.decode() |
| 775 | return value |
| 776 | |
| 777 | if _PydanticBaseModel is not None and isinstance(value, _PydanticBaseModel): |
| 778 | if self.encoder is JSON_DUMPS: |
| 779 | return value.model_dump_json() |
| 780 | # self.encoder may be a custom json encoder |
| 781 | value = value.model_dump() |
| 782 | |
| 783 | return self.encoder(value) |
| 784 | |
| 785 | def to_python_value( |
| 786 | self, value: T | str | bytes | dict | list | None |
nothing calls this directly
no test coverage detected