django admin 写XxxxxAdmin时的一些偷懒行为:以tuple的形式返回所有属性(也可以自定义数量)

本文主要是介绍django admin 写XxxxxAdmin时的一些偷懒行为:以tuple的形式返回所有属性(也可以自定义数量),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

Model 部分 

Admin部分


Model 部分 

class Language(models.Model):"""语言"""id = models.AutoField(primary_key=True, blank=False)language_name = models.CharField('语言名称', default='', max_length=50)inuse = models.BooleanField(default=True, verbose_name='是否正在使用')users = models.BigIntegerField('使用人口数量', default=0)use_time = models.IntegerField('使用时长(年)', default=0)origin = models.CharField('起源地', max_length=200, default='')# ancient_civilization = models.ForeignKey(AncientCivilization)explain = models.TextField('语言介绍', default='', max_length=2000)user = models.ForeignKey(UserInfo, on_delete=models.SET_NULL, related_name='language_operator', verbose_name='操作人',to_field='id',null=True)create_time = models.DateTimeField('生成时间', default=timezone.now)modify_time = models.DateTimeField('修改时间', auto_now=True)  # 使用Model.save()来更新才会更新注意def __str__(self, print_all=False):  # 定义打印对象时打印的字符串if print_all:# return ' '.join(('%s' % item for item in self.__dict__.values()))return str(self.__dict__)else:return self.language_name

Admin部分:

1:10这个10代表着Language这个model属性的数量,以tuple的形式返回属性的元组,这样就不用手动将属性一个一个copy过来了,当然了这样也将不方便Main 和 Advance,以及控制显示属性的数量。

class LanguageAdmin(admin.ModelAdmin):obj = Language()list_display = tuple(obj.__dir__()[1:10])readonly_fields = ('create_time', 'modify_time',)list_display_links = ('language_name',)search_fields = ('id', 'language_name', 'user')admin.site.register(Language, LanguageAdmin)

 

这篇关于django admin 写XxxxxAdmin时的一些偷懒行为:以tuple的形式返回所有属性(也可以自定义数量)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/485100

相关文章

Python打印对象所有属性和值的方法小结

《Python打印对象所有属性和值的方法小结》在Python开发过程中,调试代码时经常需要查看对象的当前状态,也就是对象的所有属性和对应的值,然而,Python并没有像PHP的print_r那样直接提... 目录python中打印对象所有属性和值的方法实现步骤1. 使用vars()和pprint()2. 使

Python pip下载包及所有依赖到指定文件夹的步骤说明

《Pythonpip下载包及所有依赖到指定文件夹的步骤说明》为了方便开发和部署,我们常常需要将Python项目所依赖的第三方包导出到本地文件夹中,:本文主要介绍Pythonpip下载包及所有依... 目录步骤说明命令格式示例参数说明离线安装方法注意事项总结要使用pip下载包及其所有依赖到指定文件夹,请按照以

CSS3中的字体及相关属性详解

《CSS3中的字体及相关属性详解》:本文主要介绍了CSS3中的字体及相关属性,详细内容请阅读本文,希望能对你有所帮助... 字体网页字体的三个来源:用户机器上安装的字体,放心使用。保存在第三方网站上的字体,例如Typekit和Google,可以link标签链接到你的页面上。保存在你自己Web服务器上的字

统一返回JsonResult踩坑的记录

《统一返回JsonResult踩坑的记录》:本文主要介绍统一返回JsonResult踩坑的记录,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录统一返回jsonResult踩坑定义了一个统一返回类在使用时,JsonResult没有get/set方法时响应总结统一返回

如何自定义一个log适配器starter

《如何自定义一个log适配器starter》:本文主要介绍如何自定义一个log适配器starter的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录需求Starter 项目目录结构pom.XML 配置LogInitializer实现MDCInterceptor

SpringBoot读取ZooKeeper(ZK)属性的方法实现

《SpringBoot读取ZooKeeper(ZK)属性的方法实现》本文主要介绍了SpringBoot读取ZooKeeper(ZK)属性的方法实现,强调使用@ConfigurationProperti... 目录1. 在配置文件中定义 ZK 属性application.propertiesapplicati

MyBatis设计SQL返回布尔值(Boolean)的常见方法

《MyBatis设计SQL返回布尔值(Boolean)的常见方法》这篇文章主要为大家详细介绍了MyBatis设计SQL返回布尔值(Boolean)的几种常见方法,文中的示例代码讲解详细,感兴趣的小伙伴... 目录方案一:使用COUNT查询存在性(推荐)方案二:条件表达式直接返回布尔方案三:存在性检查(EXI

Java反射实现多属性去重与分组功能

《Java反射实现多属性去重与分组功能》在Java开发中,​​List是一种非常常用的数据结构,通常我们会遇到这样的问题:如何处理​​List​​​中的相同字段?无论是去重还是分组,合理的操作可以提高... 目录一、开发环境与基础组件准备1.环境配置:2. 代码结构说明:二、基础反射工具:BeanUtils

Druid连接池实现自定义数据库密码加解密功能

《Druid连接池实现自定义数据库密码加解密功能》在现代应用开发中,数据安全是至关重要的,本文将介绍如何在​​Druid​​连接池中实现自定义的数据库密码加解密功能,有需要的小伙伴可以参考一下... 目录1. 环境准备2. 密码加密算法的选择3. 自定义 ​​DruidDataSource​​ 的密码解密3

Python函数返回多个值的多种方法小结

《Python函数返回多个值的多种方法小结》在Python中,函数通常用于封装一段代码,使其可以重复调用,有时,我们希望一个函数能够返回多个值,Python提供了几种不同的方法来实现这一点,需要的朋友... 目录一、使用元组(Tuple):二、使用列表(list)三、使用字典(Dictionary)四、 使