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

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

示例:

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

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

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

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

如果加上**str 方法**

str 方法返回 title 字段的值。

这意味着:

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

效果如下

相关推荐
小璐资源网4 分钟前
Java 21 新特性实战:虚拟线程详解
java·开发语言·python
SimonKing16 分钟前
全网爆火的OpenClaw保姆级教程Linux版,它来了。
java·后端·程序员
2301_8194143023 分钟前
使用Python进行图像识别:CNN卷积神经网络实战
jvm·数据库·python
WZTTMoon24 分钟前
从互斥锁到无锁,Java 20年并发安全进化史
java·python·安全
青柠代码录31 分钟前
【Linux】常用命令:sort
后端
Sakuraba Ema1 小时前
从零理解 MoE(Mixture of Experts)混合专家:原理、数学、稀疏性、专家数量影响与手写 PyTorch 实现
人工智能·pytorch·python·深度学习·数学·llm·latex
嫂子的姐夫1 小时前
041-全扣补环境:同花顺
爬虫·python·js逆向·逆向
小江的记录本1 小时前
【MyBatis-Plus】MyBatis-Plus的核心特性、条件构造器、分页插件、乐观锁插件
java·前端·spring boot·后端·sql·tomcat·mybatis
2401_894241921 小时前
机器学习与人工智能
jvm·数据库·python