drf-base64-filename
drf-base64-filename provides Serializer fields for using base64-encoded files with file names.
Setup
Install drf-base64-filename to your Python environment
pip install drf-base64-filename
Usage
Sample Model
class SampleBase64ImageModel(models.Model):
parent = models.ForeignKey(
SampleParentModel,
on_delete=models.CASCADE,
related_name='image_set',
blank=True,
null=True,
)
image = models.ImageField(blank=True)
class SampleBase64FileModel(models.Model):
parent = models.ForeignKey(
SampleParentModel,
on_delete=models.CASCADE,
related_name='file_set',
blank=True,
null=True,
)
file = models.FileField(blank=True)
Serializer Field
class SampleNamedBase64ImageSerializer(serializers.ModelSerializer):
image = NamedBase64ImageField(required=False, allow_null=True)
class Meta:
model = SampleBase64ImageModel
fields = (
'id',
'image',
)
class SampleNamedBase64FileSerializer(serializers.ModelSerializer):
file = NamedBase64FileField(required=False, allow_null=True)
class Meta:
model = SampleBase64FileModel
fields = (
'id',
'file',
)
Sample request data
{
"image": {
"file_name": "pby.jpg",
"encoded_str": "aHR0cHM6Ly9naXRodWIuY29tL2xlZWhhbnllb25n"
}
}
Sample response data
{
"image": "http://test/media/pby.jpg"
}
Testing
cd test_project
pip install -r requirements.txt
pytest
Contributing
As an open source project, we welcome contributions. The code lives on GitHub
Metadata
Release files for drf-base64-filename 1.0.8
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| drf-base64-filename-1.0.8.tar.gz | 4.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| drf_base64_filename-1.0.8-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 9.8 kB
Release files / drf-base64-filename-1.0.8.tar.gz
| Download URL | drf-base64-filename-1.0.8.tar.gz |
|---|---|
| Size | 4.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b623bfe5ff2cfa2c5cb3ab4cc41f011f17d6ee01f1ef8b7b1d3b69eafd6f2c50
|
|
BLAKE2b-256 checksum How to use checksums |
b42a735dfd2f6bc37f9eab33a75acaee9b3abaa035a9dc4141e4c3da8aa31904
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.10.5
|
Release files / drf_base64_filename-1.0.8-py3-none-any.whl
| Download URL | drf_base64_filename-1.0.8-py3-none-any.whl |
|---|---|
| Size | 5.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
78feb4c2a3fd1614044fa3122e522f9860c069c9e17cb9dafba6891d32b8ea37
|
|
BLAKE2b-256 checksum How to use checksums |
c2663a8251090937c89041f8e10739eae780e8f5bdb4d5b441d55c3f3f5ffdc7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.10.5
|