Django 快速开发实战
吕召刚
前大众点评搜索负责人
22705 人已学习
新⼈⾸单¥68
课程目录
已完结/共 76 讲
日常开发中常见的复杂场景:Django进阶开发实战 (22讲)
通往Hacker之路 (3讲)
Django 快速开发实战
登录|注册
留言
20
收藏
沉浸
阅读
分享
手机端
回顶部
当前播放: 17 | 产品新需求 :如何导出候选人的数据到CSV(增加自定义的数据操作菜单)
00:00 / 00:00
高清
  • 高清
1.0x
  • 2.0x
  • 1.5x
  • 1.25x
  • 1.0x
  • 0.75x
  • 0.5x
网页全屏
全屏
00:00
付费课程,可试看
01 | 课程介绍
02 | 内容综述
03 | 初识Django:Django适合做什么?
04 | 用2个命令创建一个包含用户管理功能的后台
05 | 开始Django之旅 :10分钟如何创建一个可以管理职位的后台
06 | 产品体验优化:快速迭代完善应用
07 | 添加自定义页面:让匿名用户可以浏览职位列表页
08 | 添加自定义页面:让匿名用户可以查看职位详情
09 | 开始一个正式的产品:产品背景、迭代思维与MVP产品规划
10 | 唯快不破:在产品中使用产品迭代思维
11 | 数据建模 & 企业级数据库设计原则
12 | 创建应用和模型,分组展示页面内容
13 | 产品新需求:如何批量从Excel文件导入候选人数据(命令行工具)
14 | 产品体验优化:候选人列表筛选和查询
15 | 省去单独的账号管理工作:企业域账号集成
16 | 批量设置面试官:面试官的导入、授权
17 | 产品新需求 :如何导出候选人的数据到CSV(增加自定义的数据操作菜单)
18 | 如何记录日志方便排查问题
19 | 生产环境的配置如何管理更安全: 生产环境与开发环境配置分离
20 | 产品细节完善
21 | 定制更美观的主题
22 | 定制面试官权限
23 | 系统报错功能:钉钉群消息集成&通知一面面试官
24 | 允许候选人注册登录: 集成Registration
25 | 候选人简历存储:创建简历Model
26 | 让候选人可以在线投递简历
27 | 使用Bootstrap来定制页面样式
28 | 简历评估&安排一面面试官
29 | 定制列表字段,查看简历详情
30 | 遗留系统集成:为已有系统数据库生成管理后台
31 | Django的中间件(Middleware)
32 | 创建请求日志、性能日志记录中间件
33 | 在Django中支持多语言
34 | 错误和异常日志上报:Sentry集成
35 | 错误和异常日志上报:捕获异常上报到Sentry并发送钉钉群通知
36 | Django安全防护:防止XSS跨站脚本攻击
37 | Django安全防护:CSRF跨站请求伪造和SQL注入攻击
38 | Django Rest Framework开放API
39 | 在Django中使用缓存&Redis的使用
40 | Django与Celery 集成:Celery的使用
41 | Django与Celery集成:异步任务
42 | Django与Celery集成:定时任务
43 | 文件和图片上传功能
44 | 实践中的问题:多数据库路由
45 | Django之美:3 行代码支持大数据量的关联外键 (autocomplete_fields)
46 | Django之美:20行代码实现只读站点ReadOnlyAdmin
47| Django之美:10行代码自动注册所有Model到Admin管理后台
48 | Django之美:Signals信号及其使用场景
49 | Django之美:优雅的架构设计 - CSR架构总结之Celery
50 | Django之美:优雅的架构设计 - CSR架构总结之Sentry&Django Rest Framework
51 | Django之美:Django的常用插件
52 | 生产环境要注意哪些事项:生产环境的应用部署
53 | 应用水平扩展:使用负载均衡
54 | 让网站访问更快:使用CDN加速
55 | 让故障在第一时间被感知到:接入监控告警
56 | 生产环境中的安全:生产环境的安全设计
57 | 生产环境中的安全:应用安全
58 | 生产环境中的安全:架构安全
59 | 生产环境中的安全:数据安全
60 | 生产环境中的安全:密码安全与业务安全
61 | 云环境中的部署:Docker容器的基础用法
62 | 云环境中的部署:如何像分发集装箱一样发布应用
63 | 云环境中的部署:开发环境的容器化&构建小镜像
64 | 云环境中的部署:什么时候需要容器编排
65 | 云环境中的部署:阿里云上搭建Kubernetes集群
66 | 云环境中的部署:管理监控容器中的Django应用
67 | 云环境中的部署:应用日志收集与查询
68 | 云环境中的持续集成:CI/CD的工作流程
69 | 云环境中的持续集成:CI/CD的基本使用
70 | 快速迭代的价值与挑战
71 | 使用OOPD方法识别产品核心功能
72 | 如何做技术方案设计与工作拆解
73 | 如何保证交付质量和持续迭代
74 | 如何更高效地寻求帮助?
75 | 一名Hacker的成长之路
76 | 结束语
登录 后留言

全部留言(20)

  • 最新
  • 精选
bibibi
老师为什么写代码的时候头往右边看呀?是需要抄什么吗

作者回复: 好问题 老师也不知道为什么

2021-12-15
2
3
渣渣
actions = (export_model_as_csv),写成这样会报错“'method' iobject is not iterable”,搜了django的官方文档,写的是列表格式,但想来应该不影响啊,它俩都是集合列表类型,只不过元组不能变,列表可以变。老师知道为什么吗?我使用的django3.2.4

作者回复: 这个写法定义的 actions 是一个字符串, 只是字符串被括号括起来了。 后面要加一个逗号才是一个 tuple, tuple/list 都是可以遍历的。 actions = (export_model_as_csv,)

2021-07-11
2
1
豆子的大雄
Windows下导出的csv用Excel打开是乱码的

作者回复: 打开csv的时候指定一下编码,或者在代码里面response 内容之前,输出一段bom头试试。

2020-10-31
6
1
溪知源
吕老师,excel表格导入中的逻辑处理请教: 表头字段有10个,上万条数据 我该怎么快速导入到数据库呢?

作者回复: 可以分批批量处理 batch insert

2021-12-02
路客
老师,我想问下export_model_as_csv这个方法是django自带的方法么?为啥里头的参数必须是三个呢?我去掉一个就会报错。 还有这个方法名可以修改的么?

作者回复: 方法是自己定义的, 方法的签名是 django 里面约定好的,系统运行的时候会按照约定的签名来调用和传参

2021-05-16
2
斌哥
queryset.model._meta 关于这个方法的资料很难找,搜索django的文档也没有。遇到这种情况该怎么办?

作者回复: 你缺一个 google,搜索 django model meta 就能找到。bing 也行

2021-03-03
2
苏寅
Windows下导出的csv用Excel打开是乱码的: 亲测的解决方法如下: response = HttpResponse(content_type='text/csv', charset='utf-8-sig')
2021-02-01
3
10
极好
对于外键关联的字段,导出的是一堆数字id,有什么办法显示成更友好的吗? 如是我的实现,但是感觉不太优雅 # 把外键的字段放入列表中 foreignkey_list = ["first_interviewer_user", "second_interviewer_user"] for obj in queryset: ## 单行 的记录(各个字段的值), 根据字段对象,从当前实例 (obj) 中获取字段值 csv_line_values = [] for field in field_list: field_object = queryset.model._meta.get_field(field) field_value = field_object.value_from_object(obj) # 如果字段是外键字段 if field in foreignkey_list: # 获取外包关联的model m = field_object.related_model.objects.get(pk=field_value) # 把filed_value替换为外键model的字符串显示 field_value = m.__str__() csv_line_values.append(field_value)
2021-08-31
3
singvis
用django-import-export这个模块,更简单,更方便
2023-05-10
1
lxy
def export_model_as_csv(modeladmin, request, queryset): 没把接受的参数讲清楚
2022-07-20
收起评论