首页 > 解决方案 > 自定义 django 管理门户文本字段的大小

问题描述

如何使 django 管理门户中的文本字段更大?现在它是一行,我想让它大约 5,所以我可以输入一个小段落并查看整个内容。

标签: django

解决方案


你必须修改你的 admin.py :

  1. 导入表单类
  2. 定义一个新的forms.Textarea
  3. 在您的 ModelAdmin 类中,覆盖表单字段

例如,如果您只想要文本区域中的 1 行:

class RichTextEditorWidget(forms.Textarea):
    def __init__(self, *args, **kwargs):
        attrs = kwargs.setdefault('attrs', {})
        attrs.setdefault('cols', 60)
        attrs.setdefault('rows',1)

    super(RichTextEditorWidget, self).__init__(*args, **kwargs)

class YourModelAdmin(admin.ModelAdmin):
        formfield_overrides = {
            models.TextField: {'widget' : RichTextEditorWidget},
        }

admin.site.register(YourModel, YourModelAdmin)

https://docs.djangoproject.com/en/3.2/topics/forms/


推荐阅读