天天生鲜Django项目(三)

32、项目中上传和使用图片

天天生鲜Django项目(三)_第1张图片

Django默认在admin页面上传文件后,保存到MEDIA_ROOT指定的目录下,由FileSystemStorage类的save()方法实现;

我们要让文件保存在FastDFS,不需要改他源代码,Django已经准备好了扩展的方式:自定义一个文件存储类,继承Storage类(FileSystomStorage的父类),重写相应的方法;

utils目录下新建fdfs目录:

天天生鲜Django项目(三)_第2张图片

client.conf和配置FastDFS时用的客户端配置文件一样,python里创建FastDFS客户端也要用客户端配置文件

# utils/fdfs/storage.py

from django.core.files.storage import Storage
from fdfs_client.client import Fdfs_client


class FDFSStorage(Storage):
    '''FastDFS文件存储类'''

你可能感兴趣的:(python,Linux,python,django,web)