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

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

示例:

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

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

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

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

如果加上**str 方法**

str 方法返回 title 字段的值。

这意味着:

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

效果如下

相关推荐
玫幽倩15 分钟前
2026聚合獬豸杯决赛wp(手机取证)
python·电子取证·misc·取证·聚合·手机取证·獬豸杯
苏三说技术15 分钟前
推荐一个牛逼的企业智能招聘系统
后端
FlyWIHTSKY21 分钟前
在智能体系统中,什么是多模态,举例详细说明
人工智能·python·langchain
达达尼昂30 分钟前
Flutter AI Harness 如何让 Agent 参与软件开发全流程
android·人工智能·后端
k4m7v2pz38 分钟前
Rust 长跑守护进程日志治理:切分、时区与结构化
开发语言·后端·rust·日志系统·日志轮转·ndjson
zzzll11111 小时前
Loop Engineering:循环工程的原理、实践与应用
java·数据库·python
嘟嘟07172 小时前
Next.js 里 SSR、CSR 和水合到底差在哪?从一段待办代码说起
前端·后端·next.js
liuxiaocheng2 小时前
快速上手:5 分钟跑通第一个 AI SDK 例子
前端·人工智能·后端
newerp2 小时前
Go net/http 标准库基础
后端·程序员·go