Skip to main content

Custom Storage For UpStorage.

Project description

django-upstorage-backend

This is a custom django storage backend for UpStorage

Installation

  1. Install Library Using pip
>> pip install django-upstorage-backend

Starting Guide

  1. Set The Custom Storage Backend. Now Open settings.py of your project.
DEFAULT_FILE_STORAGE = 'django-upstorage-backend.storages.backends.U3Storage'
  1. Set some required KEYS to settings.py
AUTH_TOKEN = 'auth token from your account'
API_KEY = 'api key of your project'
USERNAME = 'username of your account'
PROJECT_NAME = 'Created Project name'

Thats it, We are all done. Now all of your files will be handeled by the custom UpStorage's Backend Storage.

Advanced Guide

  • You don't need to set 'upload_to' in model Fields (Defaultly it files will be saved on the root of your project.)

  • File Link Will Be Stored On Your Model As Expected.You Can call them as you do usally.

  • You Can also set 'upload_to='specific/folder' in your model like:

    Class TestModel(model.Model):
       image = models.ImageField(upload_to='to/my/folder')
    
    # this will save the file to that folder.if there's no folder it will create it.
    
  • If you want to delete the image from the UpStorage Bucket when you delete it from django, you have to do it a bit differently.Lemme show you

    Class TestModel(model.Model):
       image = models.ImageField()
    
    # To delete the image you have to delete that by writing:
    
    obj = TestModel.objects.get(id=pk)
    obj.image.delete()
    
    # You can't directly delete it like this:
    
    obj.delete() # this won't delete the file from UpStorage
    
    # You have to delete the file field first to delete it.
    

    To make it simple you can override delete Method on your Model

    Class TestModel(model.Model):
        image = models.ImageField()
    
        def delete(self):
            self.image.delete()
            super(TestModel, self).delete()
    

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-upstorage-backend-1.2.tar.gz (4.5 kB view details)

Uploaded Source

Built Distribution

django_upstorage_backend-1.2-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

Details for the file django-upstorage-backend-1.2.tar.gz.

File metadata

  • Download URL: django-upstorage-backend-1.2.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.5

File hashes

Hashes for django-upstorage-backend-1.2.tar.gz
Algorithm Hash digest
SHA256 36372c94118aa0fff4a6878d32589b4d685bb881b24b470ab4f0c7a20e6114e2
MD5 bdc8e55263cbc4087eb908d7315018aa
BLAKE2b-256 840e83e3d7d80d65e7a6ae5802318e42869218a625526c8780b016fdb5bf093c

See more details on using hashes here.

File details

Details for the file django_upstorage_backend-1.2-py3-none-any.whl.

File metadata

  • Download URL: django_upstorage_backend-1.2-py3-none-any.whl
  • Upload date:
  • Size: 5.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.5

File hashes

Hashes for django_upstorage_backend-1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 1863f2e84f0b5dff50d42f3e1c2c3f57e3fda088d6e1d873f08bdb97e19b9081
MD5 3a5fdaeb7996e58318ed8a09eb054e3a
BLAKE2b-256 3287978ae96233e41433f75479b53b6d6a3a52d7fec182c9a31fcdb6b41ef2e4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page