You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django Summernote bs5主题下Style等工具栏下拉按钮无法使用如何解决

解决步骤

1. 确认版本适配

首先升级django-summernote到0.8.20.0及以上版本,该版本才正式支持bs5主题,低版本对bs5的下拉组件适配存在原生缺陷:
pip install --upgrade django-summernote

2. 修正依赖加载顺序

Bootstrap5的下拉组件完全依赖Popper.js,你需要调整模板中静态资源的加载顺序,严格按照下面的优先级引入:

  • 先引入jQuery
  • 再引入Popper.js
  • 再引入Bootstrap5 JS文件
  • 最后引入{{ summernote.media }}
    所有依赖建议下载到项目的static目录本地加载,避免外部资源加载异常。

3. 修正配置项写法

你之前将颜色可选值直接写在toolbar配置中的写法是错误的,toolbar仅用于定义按钮组结构,下拉可选值需要单独在同级配置项中声明。另外注意你贴的官方示例代码中['style', ['style'],末尾缺少右方括号,实际配置要修正语法错误,避免解析失败。正确的完整配置参考如下:

SUMMERNOTE_CONFIG = {
    'summernote': {
        'toolbar': [
            # 你的其他工具栏配置
            ['style', ['style']],
            ['fontsize', ['fontsize']],
            ['color', ['color']],
            ['table', ['table']],
            # 你的其他工具栏配置
        ],
        # 单独声明各下拉项的可选值
        'styleTags': ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'blockquote'],
        'fontSizes': ['8', '9', '10', '11', '12', '14', '16', '18', '24', '36'],
        'colorButton': {
            'colors': [
                ['#000000', '#424242', '#636363', '#9C9C94', '#CEC6CE', '#EFEFEF'],
                ['#FF0000', '#FF9C00', '#FFFF00', '#00FF00', '#00FFFF', '#0000FF'],
            ]
        },
    },
    # 你的其他django-summernote配置
    'SUMMERNOTE_THEME': 'bs5',
}

4. 清理缓存重试

配置修改完成后执行python manage.py collectstatic强制同步静态资源,清理浏览器缓存后再测试功能即可。

内容的提问来源于stack exchange,提问作者Simon Powell

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 20:15:00