TypeError $ 不是函数,Summernote,Django admin add

问题描述 投票:0回答:1

遵循 Django for Summernote 的所有安装说明后,我 当我转到 django admin 的“添加”页面检查编辑器是否正常工作时,出现以下错误:

add/:814 未捕获类型错误:$ 不是函数 在 initSummernote_id_content (添加/:814:5) 在地址/:954:5

“源”选项卡显示了问题发生的具体位置: enter image description here

看起来 Jquery 没有为管理员加载,这真的让我很困惑。网络下,jquery文件是第4个加载200ok的文件。

django django-admin summernote
1个回答
0
投票

问题在于 Django 管理加载 javascript 文件的顺序。 要修复顺序,您必须:

  1. 在 admin.py 中使用表单作为模型:
class ExercisesAdmin(SummernoteModelAdmin):     
    form = ExerciseAdminForm
    summernote_fields = ('content',)
 
  1. 在 forms.py 中声明正确的顺序 - 请参阅参考文献 here
class ExerciseAdminForm(forms.ModelForm):
    content = SummernoteTextField()

    class Media:
        js=["admin/js/vendor/jquery/jQuery.js", "studyspot/js/popper.min.js", "studyspot/js/bootstrap.min.js", "summernote/summernote-bs4.min.js",]

注意:bootstrap 和 popper 必须在 Summernote 和 jquery 之前加载。 Summernote 编辑器现在已显示,但没有样式。 我确信有一种方法可以在 Django admin 中为 Summernote 添加 css 样式,如果有人知道如何操作,请添加您的答案。

© www.soinside.com 2019 - 2024. All rights reserved.