Django 是一个使用 Python 编写的开源 Web 应用程序框架,它提供了一套用于快速开发安全、 可扩展和高效的 Web 应用程序的工具和功能。Django 基于 MVC(Model-View-Controller)架构模式,采用了最佳实践,强调代码的可重用性和可维护性。它的设计理念是 DRY(Don't Repeat Yourself), 通过提供许多内置功能和现成的解决方案,使开发人员能够专注于业务逻辑而不必从头开始构建所有组件。此次开源项目旨在为大家讲解基础的 Django 项目创建, 以及简单程序的编写。
该项目示例是一个商品入库和查询系统,通过我们构建的数据表,将商品的详细信息入库存储,并且可以按条件过滤查询数据,获取详细商品或者商品品类的信息。
在线阅读地址:https://likechen.gitbook.io/sweettalk-django4.2/
开发人员和程序员
Django 是一个流行的 Web 框架,许多开发人员和程序员选择使用它来快速构建可扩展的 Web 应用程序。无论是有经验的开发人员还是初学者,Django 都提供了一个强大且易于使用的平台来创建功能丰富的网站和应用。
学生和教育机构
许多大学、学院和教育机构将 Django 作为教学的一部分,因为它简单易懂,同时又涵盖了 Web 开发的各个方面。学生可以通过学习 Django 来获得实际的编程经验,并将其应用到项目中。
创业者和企业家
对于有创业想法或开设在线业务的人来说,Django 是一个理想的选择。它提供了一个稳定、可靠且高效的开发平台,可以帮助他们快速构建起自己的网站或应用程序,并提供必要的功能和工具来支持业务的发展。
Web 设计师和 UI/UX 设计师
尽管 Django 是一个后端框架,但在开发过程中,与前端设计师和 UI/UX 设计师密切合作是非常重要的。Django 提供了与前端技术(如 HTML、CSS 和 JavaScript)的无缝集成,并允许设计师将设计和用户体验融入到 Web 应用中。
学习周期:8 天,每天平均花费时间 1 小时- 2 小时不等,根据个人学习接受能力强弱有所浮动。
学习形式:理论学习 + 练习
人群定位:可以零基础入门
难度系数:中等
如果觉得本项目中有错误,可以 点击这里 提交你希望补充的内容,我们看到后会尽快进行补充。
-
本项目拥有清晰简洁的教学文档和匹配的课后习题。
-
项目开发过程中会涉及到设计、开发、调试、部署等多个环节,这将使你熟悉整个 Web 应用的生命周期。
Datawhale 开源学习 | Django 后端开发入门 |
---|---|
第 49 期 | 54人 |
第 51 期 | 89人 |
第 52 期 | 59人 |
-
安装虚拟环境
-
在虚拟环境中安装django依赖包
-
debug_toolbar 库
-
django_extensions 库
-
新建一个名为 erp 的项目
-
在 apps 中,新建名为 data 的 app
-
在 apps 中,新建名为 purchase 的 app
-
配置 settings.py 文件
-
运行项目
-
熟悉数据表的常用字段和常用配置
-
尝试使用数据表的字段和配置
-
创建 admin 的超级管理员
-
在 admin 文件中引入数据表
-
注册数据表到 admin
-
给产品表创建一个外键
-
撰写根据产品分类筛选产品的 api
-
使用 postman 调用 api
-
创建产品分类和产品两个数据表
-
执行生成迁移脚本命令和迁移命令
-
使用 APIView,试比较 APIView 和 as_view 的区别
-
使用 APIView 的 as_view 方法
-
构建序列化
-
序列化单个字段
-
序列化多个字段
-
序列化所有字段
-
序列化单个对象
-
序列化多个对象
-
序列关联对象(有外键)
-
输出相关数据的数据类型,找出 QuerySet 和 Instance
-
尝试对数据进行增删查改等操作
-
导入 DefaultRouter
-
使用 DefaultRouter 注册 API
-
将 API 导入项目路由配置中
-
引入自定义函数的装饰器
-
编写自定义函数
-
测试自定义函数
内容 | 详细内容 | 更新时间 | 撰写 | 审核 |
---|---|---|---|---|
P11、P12 内容合并 | ModelViewSet、DefaultRouter 和自定义函数 合并 | 2023/12/07 | 郭丹丹 | 袁博文 |
P8 内容扩充 | QuerySet 和 Instance 补充相关概念与代码示例 | 2023/12/07 | 袁博文 | 张海生 |
P10 内容补充 | Django Serialization 序列化的高级使用 补充相关概念与示例 | 2023/12/07 | 张海生 | 刘建建 |
增加 P12 新内容 | Postman 以及国内API调试工具介绍 增加 API 工具介绍 | 2023/12/07 | 郭丹丹 | 李柯辰 |
增加 P13 新内容 | Django 课后练习题 增加 Django 课后习题 | 2023/12/07 | 刘建建 | 张海生 |
完善 P07 内容 | 在视图集中构建数据表 完善新增数据查询数据流程 | 2023/12/17 | 朱敏 | 李柯辰 |
项目负责人:李柯辰
特别感谢 Sm1les、胡锐锋、周理璇 对本项目的帮助与支持。
特别感谢以下为教程做出贡献的同学!