django 下拉菜单显示为object的解决办法

Posted KeepLearningEverday

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了django 下拉菜单显示为object的解决办法相关的知识,希望对你有一定的参考价值。

  在创建完Django数据库结构之后,使用Django自带的强大的admin功能往数据库中添加数据,图形化界面如下:

  但时候有下拉框选项(只要在model中有定义Charfield就会显示为下拉框),如果遇到了如下情况:

  

  这是很反人类的,我知道他是NewsType 对象,你倒是显示对象的名称啊!

  找了很多方法,查看了AdminModel的源代码:

  我使用的python版本为3.6,可以看到list_display使用的是__str__方法,但是我在我的models中所有的返回值都是Unicode(其实python3自动进行了兼容处理,,看到那个装饰器了吗?会将str转为unicode),猜想是不是这个原因呢?

  在models中更改Unicode为str后

  

 

  结果正常显示了

  

  

 

以上是关于django 下拉菜单显示为object的解决办法的主要内容,如果未能解决你的问题,请参考以下文章

Django-select下拉菜单的显示与保存

导航下拉菜单被遮住或显示不全问题所在和解决办法

Django处理下拉数据

如何使超级鱼下拉菜单响应?

下拉菜单没有显示 CSS 中的所有内容

如何在 django 中添加项目下拉菜单