Django admin显示json字段方法详解

 更新时间:2023年06月21日 14:50:12   作者:alue  
这篇文章主要为大家介绍了Django admin显示json字段方法详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

默认的 json 显示

如图所示,如果 Django 模型中含有 json 字段, 在 admin 后台默认的显示非常混乱,不利于数据维护。 那么有什么好的方式呢?

这里给出一个不依赖于第三方库的处理方法。思路是,用自定义 JSON widget 代替 admin 默认的 text_input.

定义 widget 类如下

import json  
from django.contrib import admin  
from django.db.models import JSONField  
from django.forms import widgets  
class PrettyJSONWidget(widgets.Textarea):  
    def format_value(self, value):  
        try:  
            value = json.dumps(json.loads(value), indent=2, sort_keys=True)  
            row_lengths = [len(r) for r in value.split('\n')]  
            self.attrs['rows'] = min(max(len(row_lengths) + 2, 10), 30)  
            self.attrs['cols'] = min(max(max(row_lengths) + 2, 40), 120)  
            return value  
        except Exception as e:  
            return super(PrettyJSONWidget, self).format_value(value)

使用 widget 的方式:我们继承 admin.ModelAdmin,并且覆盖 JSONField 的 widget:

class JsonAdmin(admin.ModelAdmin):  
    formfield_overrides = {  
        JSONField: {'widget': PrettyJSONWidget}  
    }
admin.site.register(MyModel, JsonAdmin)

优化之后的 json 显示

配置后,json 字段的显示

可以看出, 此时的 json 字段更加利于阅读和修改。

以上就是Django admin显示json字段方法详解的详细内容,更多关于Django admin显示json的资料请关注脚本之家其它相关文章!

相关文章

  • Python实现词云图词频统计

    Python实现词云图词频统计

    这篇文章主要为大家详细介绍了Python数据分析中的词频统计和词云图可视化,文中的示例代码讲解详细,对我们学习Python有一定的帮助,需要的可以参考一下
    2022-12-12
  • python图片由RGB空间转成LAB空间的实现方式

    python图片由RGB空间转成LAB空间的实现方式

    这篇文章主要介绍了python图片由RGB空间转成LAB空间的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-10-10
  • Python入门教程(十五)Python的字典

    Python入门教程(十五)Python的字典

    这篇文章主要介绍了Python入门教程(十五)Python的字典,Python是一门非常强大好用的语言,也有着易上手的特性,本文为入门教程,需要的朋友可以参考下
    2023-04-04
  • pandas 对series和dataframe进行排序的实例

    pandas 对series和dataframe进行排序的实例

    今天小编就为大家分享一篇pandas 对series和dataframe进行排序的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • 使用PyTorch将文件夹下的图片分为训练集和验证集实例

    使用PyTorch将文件夹下的图片分为训练集和验证集实例

    今天小编就为大家分享一篇使用PyTorch将文件夹下的图片分为训练集和验证集实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • python下载库的步骤方法

    python下载库的步骤方法

    在本篇文章里小编给大家分享的是关于python怎么下载库的详细实例内容,有需要的朋友们学习下。
    2019-10-10
  • python 爬取微信文章

    python 爬取微信文章

    本文给大家分享的是使用python通过搜狗入口,爬取微信文章的小程序,非常的简单实用,有需要的小伙伴可以参考下
    2016-01-01
  • Python实现在Windows平台修改文件属性

    Python实现在Windows平台修改文件属性

    这篇文章主要介绍了Python实现在Windows平台修改文件属性,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-03-03
  • 使用Python下载歌词并嵌入歌曲文件中的实现代码

    使用Python下载歌词并嵌入歌曲文件中的实现代码

    这篇文章主要介绍了使用Python下载歌词并嵌入歌曲文件中的实现代码,需要借助eyed3模块,需要的朋友可以参考下
    2015-11-11
  • Python中__str__()的妙用

    Python中__str__()的妙用

    本文主要介绍了Python中__str__()的妙用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01

最新评论