Django Day6

Django Day6

1.Model继承

  • 默认情况通用字段放入父类模型对应的表中,效率低下
  • 解决方法,使用元信息,模型抽象化
    • class Meta abstarct
    • 抽象模型不会产生映射表
    • 子模型中的映射表包含父模型中的字段

2.由sql到models

  • 利用数据表生成Model
  • python manage.py inspectdb > App/models.py
  • 自带元信息,元信息中包含属性 managed=False, 不被迁移系统管理

3.models文件上传字段

  • 全局配置指定 MEDIA_ROOT
  • upload_to
    • 利用upload_to实现文件动态分类 ,upload(%y/%m/%d/XXX)
    • 指定 relative path,以配置的MEDIA_ROOT为基准

4.静态资源

  • 全局资源配置 STATICFILE_DIRS=[os.path.join(BASE_DIR, ‘static’)
  • 模板中使用静态资源
    • {% load static %}]
    • {% static relative-path %}

5.文件上传

  • 浏览器请求方式:POST
  • 网络中文件上传时分块上传,在form表单中使用 enctype=“multipart/form-data” 加密方式
  • 流程
    1. 从request.Files中得到文件数据
    2. 使用文件操作在服务器或本地写下获得的文件数据
    3. 函数icon.chunks()返回文件存在的生成器generator,以chunk_size为每一次获取数据量来写文件
    4. 每次写入时file.flush清缓存

欢迎加入我的公众号【全能技术进阶之路】,期待与你的每一天学习!
全能技术进阶之路

发布了8 篇原创文章 · 获赞 1 · 访问量 78

猜你喜欢

转载自blog.csdn.net/StudyFruit/article/details/104469030