手记

【金秋打卡】第14天 网页显示excel文件和使用class重写视图

1.课程名称:网页下载excel文件,使用class重写视图


课程章节:利用class重写视图


2.课程内容:

    如何在响应对象fileResponse发excel文件

    

还是老样子添加访问路径,写入视图函数



views.py 写入函数


def print_excle(request):

引用fileResponse,因为之前的引用是局部的,所以现在还是需要引用

from django.http import FileResponse

全路径连接这个excle文件

file_name = os.path.join(settings.BASE_DIR,'templates/..yyyy.xlsx')

用rb方法读取文件

返回 响应对象fileResponse,conten_type 类型输出选择excel



打开网站输入路径测试一下


网页会无法直接显示excel类型的文件,而是改为下载


成功  


////

然后是是使用class重写视图

视图就是简单的一个函数,然后返回一个响应







    使用class类展示视图,变得更加简洁

    先继承视图 配置模板地址 配置url

    


写入


然后在views.py写入class


继承templateview,新建一个html做测试


把html 赋给 template_name


路径加上 as_view 调用

然后测试 显示出来了


templateview原理解释





这个templateview第一步会从主项目的目录settings寻找模板文件




在项目的根目录下有一个templates, 它会在这里寻找show_class html

DIRS': [BASE_DIR / 'templates']


找不到就会到app的模板目录寻找模板文件




还有其他类的内置的通用视图

很多内置的视图都可以直接拿来用,便更加简洁



本节完!! O(∩_∩)O





0人推荐
随时随地看视频
慕课网APP