drf-base64-filename provides Serializer fields for using base64-encoded files with file names.
Project description
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"
}
Test
❯ pip install -r requirements.txt
❯ cd test_project
❯ pytest
Contributing
As an open source project, we welcome contributions. The code lives on GitHub
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for drf-base64-filename-1.0.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 62041485c334fc49de16ab95bd91d8e1cdba5ed652f1118beb6d4fed08d4000c |
|
MD5 | 906bce7e597a17202d00baaf225fa991 |
|
BLAKE2b-256 | 4f28a74d7b13eebd0998c09af8c4c3751a1b46ca591590bbbc84be23f3b69d77 |
Close
Hashes for drf_base64_filename-1.0.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9c955c01652462b023c8c0ee0eb83937bece3ead7ddc71135ffdd41f10f3d895 |
|
MD5 | 939b22b7fc6876a5b88ea01072179062 |
|
BLAKE2b-256 | 1443ec252395cf9d140b1177196ff1795442163fd7f13a11d10e350e27d1fb39 |