如何在 django admin change_form 中实现 pygment 语法高亮?

Posted

技术标签:

【中文标题】如何在 django admin change_form 中实现 pygment 语法高亮?【英文标题】:How to implement pygment syntax highlighting in django admin change_form? 【发布时间】:2013-07-02 10:56:47 【问题描述】:

我想在某种情况下在 django 管理模板中对我的文本字段 python 代码进行 pygmentize。

我有一个 python 代码块,它存储为 django 模型中的文本字段。我支持在 django admin change_form.html 中使用语法高亮显示 python 代码的情况,只要你尝试访问它,它就会在正确的语法高亮风格。

我浏览了一些资源。

所有都被解释为使用自定义 pygment 模板标签制作 django 模板标签或过滤器,我也得到了一些不错的文章。

1.http://od-eon.com/blogs/stefan/integrating-pygments-django/

2.http://djangosnippets.org/snippets/416/

但我在 django admin change_form.html 中使用模板标签或过滤器时遇到问题?

或者如果这是需要传递的方法(http://dpaste.com/hold/1280580/),我们如何通过 django model admin 进行语法高亮显示?

【问题讨论】:

【参考方案1】:

假设您不需要对 python 代码列进行排序,那么您可以使用 list_display 在 ModelAdmin 方法中使用 pygments API 简单地呈现它。这样你就根本不需要接触 django 管理模板了。

【讨论】:

list_display 在 change_list.html 中用于将字段显示为列,对吗?但我必须在文本字段中的 change_form.html 中使用检测到的语法突出显示 好的,那就编辑你的话题,谈谈change_form而不是changelist_form,谢谢!

以上是关于如何在 django admin change_form 中实现 pygment 语法高亮?的主要内容,如果未能解决你的问题,请参考以下文章

如何将 django-admin-bootstrapped 与 django 1.10 集成

如何在 django admin 中进行分类?

Django Admin Cookbook-14如何在Django Admin后台移除“删除所选”操作

如何在 Django-admin 中添加自定义搜索框?

Django Admin Cookbook-18如何限制对Django Admin管理部分功能的使用

如何在 django admin 上添加只读内联