django-文件上传
来源:互联网 发布:韩国ip地址和端口 编辑:程序博客网 时间:2024/06/08 14:49
- 如何配置上传的文件路径
- 如何解决富文本编辑器文件上传的问题
配置上传:
1、在settings.py中配置MEDIA_URL和MEDIA_ROOT
2、urls.py中配置路由
from django.views.static.servefrom django.conf import settingsurl(r"^uploads/(?P<path>.*)$", \ serve, \ {"document_root": settings.MEDIA_ROOT,}),
3、在model中设置图片的上传位置和路径
class User(AbstractUser): avatar = models.ImageField(upload_to='avatar/%Y/%m',\ default='avatar/default.png', max_length=200, \ blank=True, null=True, verbose_name='用户头像') ...
富文本编辑器文件上传
config.js:KindEditor.ready(function(K) { K.create('textarea[name="content"]', { width : "800px", height : "200px", uploadJson: '/admin/upload/kindeditor', });});
urls配置:
url(r'^admin/upload/(?P<dir_name>[^/]+)$', upload_image, name='upload_image'),
upload.py:
from django.http import HttpResponsefrom django.conf import settingsfrom django.views.decorators.csrf import csrf_exemptimport osimport uuidimport jsonimport datetime as dt@csrf_exemptdef upload_image(request, dir_name): ################## # kindeditor图片上传返回数据格式说明: # {"error": 1, "message": "出错信息"} # {"error": 0, "url": "图片地址"} ################## result = {"error": 1, "message": "上传出错"} files = request.FILES.get("imgFile", None) if files: result =image_upload(files, dir_name) return HttpResponse(json.dumps(result), content_type="application/json")#目录创建def upload_generation_dir(dir_name): today = dt.datetime.today() dir_name = dir_name + '/%d/%d/' %(today.year,today.month) if not os.path.exists(settings.MEDIA_ROOT + dir_name): os.makedirs(settings.MEDIA_ROOT + dir_name) return dir_name# 图片上传def image_upload(files, dir_name): #允许上传文件类型 allow_suffix =['jpg', 'png', 'jpeg', 'gif', 'bmp'] file_suffix = files.name.split(".")[-1] if file_suffix not in allow_suffix: return {"error": 1, "message": "图片格式不正确"} relative_path_file = upload_generation_dir(dir_name) path=os.path.join(settings.MEDIA_ROOT, relative_path_file) if not os.path.exists(path): #如果目录不存在创建目录 os.makedirs(path) file_name=str(uuid.uuid1())+"."+file_suffix path_file=os.path.join(path, file_name) file_url = settings.MEDIA_URL + relative_path_file + file_name open(path_file, 'wb').write(files.file.read()) return {"error": 0, "url": file_url}
阅读全文
0 0
- Django - 上传文件(初稿)
- django 文件上传
- django 文件上传
- Django的文件上传
- django上传文件
- django 文件上传
- django上传文件
- django 上传文件
- django上传文件
- Django文件上传
- django实现文件上传
- Django form 文件上传
- Django实现文件上传
- django 文件上传
- Django文件上传
- python-django文件上传
- Django文件上传
- DJango文件上传实现
- qml text 显示数字缺少位数解决。
- MySQL Limit 分页优化
- ShareSdk踩坑记
- S3C6410 MFC H264 解码分析
- 金蝶EAS,获取单据对应的所有附件(附件集合)
- django-文件上传
- 2017/6/2儿童节过后的第一天,恭喜自己写下人生第一篇博客
- mtk
- linux查看端口的常用命令
- 30分钟入门Java8之方法引用
- linux文件赋权
- 发送有序广播
- 关联源代码
- JavaScript