django boto3: NoCredentialsError - Невозможно найти учетные данные
Я пытаюсь использоватьboto3
в моем проекте django для загрузки файлов на Amazon S3. Полномочия определены вsettings.py
:
AWS_ACCESS_KEY = xxxxxxxx
AWS_SECRET_KEY = xxxxxxxx
S3_BUCKET = xxxxxxx
Вviews.py
:
import boto3
s3 = boto3.client('s3')
path = os.path.dirname(os.path.realpath(__file__))
s3.upload_file(path+'/myphoto.png', S3_BUCKET, 'myphoto.png')
Система жалуется наUnable to locate credentials
, У меня есть два вопроса:
(а) Кажется, я должен создать файл учетных данных~/.aws/credentials
, Но в проекте Django, где я должен положить его?
(б) метод s3upload_file
принимает путь / имя файла в качестве первого аргумента. Возможно ли, что я предоставляю поток файлов, полученный с помощью элемента ввода формы<input type="file" name="fileToUpload">
?