J'essaye de télécharger des fichiers MEDIA_FILES sur le service S3 d'Amazon. Je voudrais d'abord les télécharger à la racine de seau, puis peut-être créer des sous-dossiers avant d'enregistrer le fichier. Mon modèle de test est simpleen utilisant s3 avec django-storages et en téléchargeant des images
from django.db import models
# Create your models here.
class TestModel(models.Model):
name = models.CharField(max_length=10)
logo = models.ImageField(upload_to='pictures/')
class Meta:
verbose_name = ('TestModel')
verbose_name_plural = ('TestModels')
def __unicode__(self):
pass
J'ai un sous-dossier nommé images déjà créé.
settigns.py
DEFAULT_FILE_STORAGE = 'storages.backends.s3boto.S3BotoStorage'
AWS_ACCESS_KEY_ID = 'id'
AWS_SECRET_ACCESS_KEY = 'secret_key'
AWS_STORAGE_BUCKET_NAME = 'mybucket'
from S3 import CallingFormat
AWS_CALLING_FORMAT = CallingFormat.SUBDOMAIN
Mais lorsque je tente d'ajouter un TestModel à partir du panneau d'administration, je reçois l'erreur suivante
Request URL: http://127.0.0.1:8000/admin/testmodel/testmodel/add/
Django Version: 1.6.4
Exception Type: TypeError
Exception Value:
'NoneType' object has no attribute '__getitem__'
-t-s3 et django-entrepôts fonctionnent comme avant? Quelle est la valeur de MEDIA_URL à définir lors de l'utilisation de s3? Quelle est la valeur de MEDIA_ROOT à définir lors de l'utilisation de S3 et django-stockages?
Puis-je utiliser this way pour télécharger un fichier à un service S3? C'est la première fois que j'utilise un stockage en nuage, donc je suis un peu confus.
Je sais ce que la racine des médias est, ce que je demandais était comment le configurer jusqu'à Utilisez-le avec django-stockages et s3. Je connais les deux aussi puisque django-storages l'utilise. – Apostolos
Mon mauvais, pas fait attention que vous utilisez django-stockage, j'ai utilisé tinyS3 dans mon projet. – privaloff
Pas de problème, je pense que je reçois à l'aide de cette http://stackoverflow.com/a/10825691/2349589 – Apostolos