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"
}
Testing
cd test_project
pip install -r requirements.txt
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.7.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | c26a3b61b15e0488baac2d3861bac0c196f2e1f7e8c1db1b7f793cd2110a5b9b |
|
MD5 | 8e58c75bbeabae30cf8d70888e85de04 |
|
BLAKE2b-256 | e59acade9e6ccf422f82726b14c12152aee2a4e6d5b95630e5f0aa77ce4c0465 |
Close
Hashes for drf_base64_filename-1.0.7-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cfd9af977afe6b6389e5b83848a177b0dff86ecfb715a1d01c0c24409a80c3bb |
|
MD5 | 6e91ed41965740221c76bd032ddf6ca1 |
|
BLAKE2b-256 | 4054f562c3b53e1b587b00292f800465b5d143eb6ac726981ef7d2e340786774 |