Django Serializers 序列化指定字段的方法

本文介绍在Django中使用内置Serializers进行数据序列化时,如何通过添加fields选项来精确控制返回的字段。通过对比默认行为与指定字段配置,展示如何排除如username和id等不需要的字段,确保API返回数据精简且符合需求。

Python Django 封装通用分页模块详解

本文详解如何在 Python Django 项目中封装通用的分页模块。通过创建 utils/page.py 中的 ShowPage 类,实现页码计算、边界处理及 HTML 生成功能。结合 views.py 的数据查询与 book_list.html 的模板渲染,展示从 URL 参数获取到前端展示的完整流程,帮助开发者快速集成高效的分页组件。

Python Django 封装通用分页模块详解

解决Django与Vue/Ajax交互时的CSRF验证失败问题

本文介绍了在使用jQuery Ajax与Django后端进行数据交互时,如何正确处理CSRF验证。针对非Django模板渲染场景下提交表单遇到的CSRF Check Failing错误,提供了通过JavaScript获取csrftoken并手动添加到请求头中的完整解决方案,确保前后端通信安全顺畅。

Django User模型详解与四种扩展重写方案对比

本文深入解析Django内置User模型的字段与验证机制,并详细对比四种扩展用户模型的方法:Proxy模型、一对一外键、继承AbstractUser及继承AbstractBaseUser。重点说明各方案的适用场景、代码实现及settings配置,帮助开发者根据需求选择最优的用户管理策略。

Django中实现自定义软删除Model的方法

本文介绍如何在Django中通过自定义Manager和QuerySet实现模型的软删除功能。通过重写delete方法,将记录标记为逻辑删除而非物理移除,从而支持数据恢复与统计。示例展示了SoftDeletableModel基类的构建及CustomerInfo模型的应用。

Django中create和save方法的不同

本文深入解析Django中Model的两种核心保存方式:save()与create()。通过对比代码示例,说明save()需先实例化再调用保存,而create()一步完成对象创建与入库。此外,特别指出Auth用户模型应使用create_user以自动处理密码哈希,帮助开发者选择更合适的数据持久化方案。

Django ORM 多对多关系实现:自定义中间表与 ManyToManyField 详解

本文深入解析 Django ORM 中处理多对多关系的两种核心方案:通过自定义模型构建中间表,以及使用内置的 ManyToManyField。详细对比了两者在灵活性、数据列限制及操作方式上的差异,并介绍了结合两者的“杂交”模式,即在 ManyToManyField 中指定 through 参数以保留自定义中间表的额外字段功能,帮助开发者根据实际需求选择最优的数据模型设计。