Django 创建表时 “__str__ ”方法的使用

在 Django 模型中,str 方法是一个 Python 特殊方法(也称为"魔术方法"),用于定义对象的字符串表示形式。它的作用是控制当对象被转换为字符串时,应该返回什么样的内容。

示例:

我在初学ModelForm时尝试写了简单的代码

上面代码的目的是,写一个增加用户的一个页面,例如下面的样子,让用户输入各个字段的值

其中,最后一个字段:部门,我想根据部门表中的数据来让用户选择,如果没有使用**str 方法**

效果如下,Django 会默认显示类似 <Department: Department object (1)> 的内容,这显然不够直观。

如果加上**str 方法**

str 方法返回 title 字段的值。

这意味着:

  • 当你打印一个 Department 实例时,会显示该部门的标题。
  • 在 Django 管理后台中,部门对象会显示为它的标题(如 IT、HR 等)。
  • 在模板中渲染 Department 实例时,也会显示标题。

效果如下

相关推荐
Dxy12393102164 分钟前
Python有哪些方法可以进行文本纠错
开发语言·python
海兰8 分钟前
【springboot】gradle快速镜像配置
spring boot·笔记·后端
武超杰14 分钟前
SpringBoot 整合 Spring Security 实现权限控制
spring boot·后端·spring
却道天凉_好个秋15 分钟前
pytorch(一):张量
人工智能·pytorch·python·深度学习
XMYX-020 分钟前
06 - Go 的切片、字典与遍历:从原理到实战
后端·golang
华清远见IT开放实验室21 分钟前
AI 算法核心知识清单(深度实战版1)
人工智能·python·深度学习·学习·算法·机器学习·ai
架构师专栏22 分钟前
比 MQ 更轻的异步方案:Spring 内置的这个隐藏功能,很多人还不知道
后端
百结21426 分钟前
Python网络编程
网络·python
林木8829 分钟前
Druid Kafka 数据源消费到 Segment 生成全链路深度分析
后端
摇曳的精灵35 分钟前
Spring boot注解实现信息脱敏
java·spring boot·后端·注解脱敏·信息脱敏