Django 示例:将图片从 Django 上传到 S3
这是在 Github 上公开的内容(README 的内容)。
源代码 → https://github.com/takux/example-django-s3
源代码 → https://github.com/takux/example-django-s3
因为我们提供了与Django相关的课程,所以请务必参考这个链接:https://www.takux.one
创建Django项目
根据需要创建虚拟环境。
python3 -m venv venv
建立 Django 项目。
django-admin startproject myconfig .
创建 Django 应用程序。
python manage.py startapp myapp
安装所需的库。
pip install Django django-environ boto3
Django:用作框架
django-environ:用於讀取環境變數
boto3:用於將文件上傳至S3
AWS S3的配置设定。
因为在Google搜索等地方可以找到设置方法,所以省略。
设置环境变量
创建一个.env文件,并进行以下设置。
(请注意不要将其公开在Github等上)
# DjangoのSECRET_KEY(今回のExampleとは直接関係ないが、Github上にSECRET_KEYは公開すべきでないので設定)
SECRET_KEY=xxx
# AWS S3で設定したアクセスキーやバケット名など
AWS_ACCESS_KEY_ID=xxx
AWS_SECRET_ACCESS_KEY=xxx
AWS_STORAGE_BUCKET_NAME=xxx
Django 的配置
以下是此次更改的文件。
-
- myconfig/settings.py
-
- myconfig/urls.py
- myapp/views.py
准备图像
这次将使用项目根目录下预先准备好的 screenshot.png 图片。
执行
在本地运行“python manage.py runserver”命令,并在http://localhost:8000/upload/访问,将图片(screentshot.png)上传到S3。