Add direct uploads to S3 functionality with a progress bar to file input fields within Django admin.
Project description
django-s3direct
===============
Upload files direct to S3 from Django
-------------------------------------
Add direct uploads to AWS S3 functionality with a progress bar to file input fields within Django admin.
![screenshot](https://raw.github.com/bradleyg/django-s3direct/master/screenshot.png)
## Installation
Install with Pip:
```pip install django-s3direct```
Currently only python 2.7 supported.
## S3 Setup
Setup a CORS policy on your S3 bucket.
```xml
<CORSConfiguration>
<CORSRule>
<AllowedOrigin>*</AllowedOrigin>
<AllowedMethod>PUT</AllowedMethod>
<AllowedMethod>POST</AllowedMethod>
<AllowedMethod>GET</AllowedMethod>
<MaxAgeSeconds>3000</MaxAgeSeconds>
<AllowedHeader>*</AllowedHeader>
</CORSRule>
</CORSConfiguration>
```
## Django Setup
### Settings.py
```python
INSTALLED_APPS = [
...
's3direct',
...
]
AWS_SECRET_ACCESS_KEY = ''
AWS_ACCESS_KEY_ID = ''
AWS_STORAGE_BUCKET_NAME = ''
S3DIRECT_ENDPOINT = '' # http://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
S3DIRECT_DIR = 's3direct' # (optional, default is 's3direct', location within the bucket to upload files)
S3DIRECT_UNIQUE_RENAME = False # (optional, default is 'False', gives the uploaded file a unique filename)
```
### urls.py
```python
urlpatterns = patterns('',
url(r'^s3direct/', include('s3direct.urls')),
)
```
### models.py
```python
from django.db import models
from s3direct.fields import S3DirectField
class Example(models.Model):
thumbnail = S3DirectField(upload_to='s3direct')
# 'upload_to' is an optional argument
```
You may need to run `collectstatic` before `s3direct` will work correctly on your public website:
```bash
python manage.py collectstatic
````
[![Build Status](https://secure.travis-ci.org/bradleyg/django-s3direct.png)](http://travis-ci.org/bradleyg/django-s3direct)
===============
Upload files direct to S3 from Django
-------------------------------------
Add direct uploads to AWS S3 functionality with a progress bar to file input fields within Django admin.
![screenshot](https://raw.github.com/bradleyg/django-s3direct/master/screenshot.png)
## Installation
Install with Pip:
```pip install django-s3direct```
Currently only python 2.7 supported.
## S3 Setup
Setup a CORS policy on your S3 bucket.
```xml
<CORSConfiguration>
<CORSRule>
<AllowedOrigin>*</AllowedOrigin>
<AllowedMethod>PUT</AllowedMethod>
<AllowedMethod>POST</AllowedMethod>
<AllowedMethod>GET</AllowedMethod>
<MaxAgeSeconds>3000</MaxAgeSeconds>
<AllowedHeader>*</AllowedHeader>
</CORSRule>
</CORSConfiguration>
```
## Django Setup
### Settings.py
```python
INSTALLED_APPS = [
...
's3direct',
...
]
AWS_SECRET_ACCESS_KEY = ''
AWS_ACCESS_KEY_ID = ''
AWS_STORAGE_BUCKET_NAME = ''
S3DIRECT_ENDPOINT = '' # http://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
S3DIRECT_DIR = 's3direct' # (optional, default is 's3direct', location within the bucket to upload files)
S3DIRECT_UNIQUE_RENAME = False # (optional, default is 'False', gives the uploaded file a unique filename)
```
### urls.py
```python
urlpatterns = patterns('',
url(r'^s3direct/', include('s3direct.urls')),
)
```
### models.py
```python
from django.db import models
from s3direct.fields import S3DirectField
class Example(models.Model):
thumbnail = S3DirectField(upload_to='s3direct')
# 'upload_to' is an optional argument
```
You may need to run `collectstatic` before `s3direct` will work correctly on your public website:
```bash
python manage.py collectstatic
````
[![Build Status](https://secure.travis-ci.org/bradleyg/django-s3direct.png)](http://travis-ci.org/bradleyg/django-s3direct)
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
django-s3direct-0.1.6.tar.gz
(62.3 kB
view hashes)
Built Distribution
Close
Hashes for django-s3direct-0.1.6.macosx-10.9-intel.exe
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2525a97c87296e471987ffff2565c552f16ac95d64f6cc4c0a8e13c8ffa960dd |
|
MD5 | b7eb8421530ee8bb6eba0f9ed039ee16 |
|
BLAKE2b-256 | 655374bb48ffced83f7d550a18f27e95fdcc28e25748fc774d51f571e2429b59 |