1、註冊七牛雲帳號:python
一、註冊並完成實名認證git
二、建立公有存儲空間github
2、安裝django-qiniu-storage:數據庫
pip install django-qiniu-storagedjango
安裝django-qiniu-storage庫七牛雲存儲
https://github.com/glasslion/django-qiniu-storagesession
GitHub主頁app
3、配置demo/settings.py:編輯器
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'product.apps.ProductConfig',
'xadmin',
'crispy_forms',
'reversion',
# 添加django-xadmin
'import_export',
# 導入導出
'ckeditor',
'ckeditor_uploader',
# 富文本編輯器
'rest_framework',
# django-rest-framework
'qiniustorage',
# 七牛雲存儲
]
# MEDIA_URL = '/media/'
# MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
# 定義圖片存放的目錄
QINIU_ACCESS_KEY = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
# 七牛給開發者分配的AccessKey
QINIU_SECRET_KEY = 'YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY'
# 七牛給開發者分配的Secret
QINIU_BUCKET_NAME = 'abc123'
# 用來存放文件的七牛空間(bucket)的名字
QINIU_BUCKET_DOMAIN = 'xxxxxxxx.bkt.clouddn.com/'
# 七牛空間(bucket)的域名,別遺漏了後面的/
DEFAULT_FILE_STORAGE = 'qiniustorage.backends.QiniuStorage'
# 只用七牛託管動態生成的文件(例如用戶上傳的文件)
MEDIA_URL = QINIU_BUCKET_DOMAIN
MEDIA_ROOT = QINIU_BUCKET_DOMAIN
3、模型product/models.py:spa
from ckeditor_uploader.fields import RichTextUploadingField
from django.db import models
# Create your models here.
class ProductInfo(models.Model):
# 產品表
product_name = models.CharField(max_length=32, verbose_name="產品名稱")
# 產品名稱
product_picture = models.ImageField(blank=True,
null=True,
upload_to="pictures/%Y%m%d",
max_length=255,
verbose_name="產品圖片")
# 產品圖片,數據庫裏面存儲的是圖片的相對路徑
product_describe = models.CharField(max_length=255, verbose_name="產品描述")
# 產品描述
product_manager = models.CharField(max_length=11, verbose_name="產品經理")
# 產品經理
product_detail = RichTextUploadingField(verbose_name="產品詳情", default="", blank=True, null=True,)
# 產品詳情,帶有上傳圖片功能的富文本編輯器
create_time = models.DateTimeField(auto_now_add=True, verbose_name="建立時間")
# 建立時間
update_time = models.DateTimeField(auto_now=True, blank=True, null=True, verbose_name="修改時間")
# 修改時間
class Meta:
db_table = 'product_info'
# 設置表名,默認表名是:應用名稱_模型類名
# 帶有應用名的表名太長了
verbose_name = '產品列表'
verbose_name_plural = "產品列表"
def __str__(self):
return self.product_name
4、admin後臺頁面:
python manage.py runserver
啓動服務
5、七牛雲存儲空間: