Skip to main content

Django file storage backend for Google Cloud Storage

Project description

Based on Google Cloud Storage JSON API.

Written using Google Cloud Python Client library.

Quick start

$ pip install django-gcs

Update settings.py

DJANGO_GCS = {
    'bucket': 'bucket-name',
    'http': get_http_credentials
}

Settings

DJANGO_GCS = {
    'bucket': None,
    'project': '',
    'credentials': None,
    'http': None,
    'cache_control': ['no-cache']
}
  • bucket name of the bucket on google cloud storage.
  • project google project name (not required).
  • credentials oauth2 credentials
  • http httplib2.Http instance or callable that returns httplib2.Http instance
  • cache_control is a list of strings. By default [‘no-cache’]

Note: One of credentials or http should be provided for authentication.

Usage

Set storage globally:

DEFAULT_FILE_STORAGE = 'django_gcs.GoogleCloudStorage'

Or per model:

from django_gcs import GoogleCloudStorage

class FileModel(models.Model):
    file = models.ImageField(storage=GoogleCloudStorage(bucket='some-bucket'))

Example how to generate HTTP object to make request.

import pickle
import httplib2

def get_http_credentials():
    with open('google/oauth2/credentials/file', 'r') as f:
        credentials = pickle.load(f)
        http_credentials = credentials.authorize(httplib2.Http())
    return http_credentials

Project details


Download files

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

Files for django-gcs, version 0.1.1
Filename, size File type Python version Upload date Hashes
Filename, size django-gcs-0.1.1.tar.gz (2.8 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page