我有一个用于后期写作的 Django 应用程序。我已将 django-summernote 集成到应用程序中,但遇到了 django Summernote 小部件未在管理面板中显示的问题。它在我的模板中运行良好且流畅,但未显示在管理面板中。请帮助我。
设置.py
INSTALLED_APPS += ('django_summernote', )
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media/')
X_FRAME_OPTIONS = 'SAMEORIGIN'
SUMMERNOTE_CONFIG = {
'iframe': False,
"jquery": "summernoteJQuery",
'summernote': {
'width': '100%'
}
}
SUMMERNOTE_THEME = 'bs3'
admin.py
from django.contrib import admin
from .models import Post, Comment
from django_summernote.admin import SummernoteModelAdmin
class PostAdmin(SummernoteModelAdmin):
summernote_fields = ('text',)
admin.site.register(Post,PostAdmin)
admin.site.register(Comment)
urls.py
from django.urls import include
# ...
urlpatterns = [
...
path('summernote/', include('django_summernote.urls')),
...
]
...
if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL,
document_root=settings.MEDIA_ROOT)
如果您在 Django 管理面板中没有使用 Bootstrap 或外部 CSS 框架,则必须在
'iframe': True
中设置 SUMMERNOTE_CONFIG
。否则,如果您使用 Bootstrap 或外部 CSS 框架,请将其设置为 False
。这是更正后的语法和 Markdown:
# Using SummernoteWidget - iframe mode, default
'iframe': True,
# Or, you can set it to `False` to use SummernoteInplaceWidget by default - no iframe mode
# In this case, you have to load Bootstrap/jQuery sources and dependencies manually.
# Use this when you're already using Bootstrap/jQuery based themes.
'iframe': False,
查看文档了解更多详细信息:django-summernote GitHub。