Django 最佳实践
欢迎关注天善智能,我们是专注于商业智能BI,人工智能AI,大数据分析与挖掘领域的垂直社区,学习,问答、求职一站式搞定!
对商业智能BI、大数据分析挖掘、机器学习,python,R等数据领域感兴趣的同学加微信:tstoutiao,邀请你进入数据爱好者交流群,数据爱好者们都在这儿。
作者:刘志军,6年+Python使用经验, 高级开发工程师,目前在互联网医疗行业从事Web系统构架工作
个人公众号:Python之禅(微信ID:vttalk)
这是一篇翻译文章,Django 是 Python 中最流行、也是最强大的 Web 框架,被很大公司所使用。这篇文章总结了 Django 开发中一些非常好的最佳实践应用指南,文章中有很多外链,点击【阅读原文】查看外链版。以下是译文
如果你决定学习如何用 Python 和 Django 构建网站,这是不错的选择,这里列出了一系列 Django 最佳实践,如果你对某些观点不同意,可以在下面留言。
基础
使用 Pipenv 管理虚拟环境
使用自定义用户模型(custom user model)
优先使用 GCBV(通用类视图),退而求其次的选择是使用类视图而不是函数视图。
像 SECRET_KET
这样的变量应该使用环境变量来管理,而不是写在代码中
使用多 setting 文件,所以 DEBUG
不应该出现在生产环境中
本地使用基于 Docker 的 Postgres 数据库(貌似美国人更喜欢用PostgreSQL,而国内用MySQL似乎更多些)
必须有单元测试和集成测试,越多越好
安全方面
使用 Pony Checkup 一步检查网站的安全
始终使用最新版本的 Django
用 SSL/HTTPS 部署
修改 admin 的 url,而不是使用默认的 /admin/
第三方包
django-debug-toolbar 调试消息和数据库查询时非常有用
django-extensions 这个仓库收集了很多扩展库,尤其是runserver_plus
django-allauth 提供社交认证和用户email确认
Whitenoise 服务于静态文件(也可以使用S3,亚马逊的对象存储,国内可以使用阿里云或者七牛)
Sentry 记录错误日志
通用
没有既定认可的Django项目目录结构,但是 cookiecutter-django 是最流行的
越来越多的人使用 Django Rest Framework 来构建 Result API。
原文链接: https://wsvincent.com/django-best-practices/
作者其它好文推荐:
代码这样写更优雅(Python版)
![](https://mmbiz.qpic.cn/mmbiz/p6Vlqvia1UiczXekp7873CLQuhqrGuCtelN2mDQzDKqHW2g6VEVSJ59JSU82eyxiaUoUowV81jfIESQ0PaYchZhCQ/640.gif?)
Python的爱好者社区历史文章大合集:
2018年Python爱好者社区历史文章合集(作者篇)
关注后在公众号内回复“ 课程 ”即可获取:
小编的转行入职数据科学(数据分析挖掘/机器学习方向)【最新免费】
小编的Python的入门免费视频课程!
小编的Python的快速上手matplotlib可视化库!
崔老师爬虫实战案例免费学习视频。
陈老师数据分析报告扩展制作免费学习视频。
玩转大数据分析!Spark2.X + Python精华实战课程免费学习视频。