Python Can';t在settings.py中配置django TinyMCE,而它';这在html脚本中是可能的

Python Can';t在settings.py中配置django TinyMCE,而它';这在html脚本中是可能的,python,django,tinymce,wysiwyg,text-editor,Python,Django,Tinymce,Wysiwyg,Text Editor,我在之前的一个项目中使用了TinyMCE for django,据我记忆所及,可以在django settings.py文件中进行配置。现在,我正在处理另一个项目,但除了将TinyMCE配置js脚本添加到我想要使用它的模板之外,找不到任何解决方案来完成它 从HTML进行配置并不是什么大问题,但在获取静态请求时似乎存在一些性能问题。而且,在settings.py中配置时,我没有遇到任何加载问题 你可以在这里查看我的项目文件。希望找到解决办法 models.py from tinymce.model

我在之前的一个项目中使用了TinyMCE for django,据我记忆所及,可以在django settings.py文件中进行配置。现在,我正在处理另一个项目,但除了将TinyMCE配置js脚本添加到我想要使用它的模板之外,找不到任何解决方案来完成它

从HTML进行配置并不是什么大问题,但在获取静态请求时似乎存在一些性能问题。而且,在settings.py中配置时,我没有遇到任何加载问题

你可以在这里查看我的项目文件。希望找到解决办法

models.py

from tinymce.models import HTMLField

class Article(models.Model):
  ...
  message = HTMLField()
  ...
forms.py

from django import forms
from tinymce.widgets import TinyMCE
from . import models


class ArticleForm(forms.ModelForm):
  class Meta():
    abstract = True
    model = models.Article
    fields = ('title', 'message', 'tags')
    widgets = {
      'title': forms.Textarea(attrs={'placeholder': 'Başlık'}),
      'message': TinyMCE(attrs={'class': 'tinymce', 'id': 'myeditablediv', 'contenteditable': 'true', 'style': 'position: relative;'}),
    }

  def __init__(self, *args, **kwargs):
    user = kwargs.pop('user', None)
    super().__init__(*args, **kwargs)
form.html

{% extends "articles/article_base.html" %}
{% load bootstrap4 %}
{% load static %}
{% load widget_tweaks %}
{% block article_content %}
<div class="container">
  <div class="articleForm">
    <form method="POST" action="{% url 'articles:create' %}" id="ArticleForm" enctype="multipart/form-data">
      <div class="header">
        <h1>Icerik Olustur</h1>
      </div>
      {% csrf_token %}
      {% for hidden in form.hidden_fields %}
      {{ hidden }}
      {% endfor %}
      <div class="form-group">
        <label for="{{ form.title.id_for_label }}">{{ form.title.label }}</label>
        {% render_field form.title class="form-control title" placeholder="Baslik boyle olur..." autocomplete="off" maxlength="140" %}
        {% for error in field.errors %}
        <span class="help-block">{{ error }}</span>
        {% endfor %}
      </div>
      <div class="form-group">
        <label for="{{ form.message.id_for_label }}">{{ form.message.label }}</label>
        {% render_field form.message class="tinymce" id="myeditablediv" %}
        {% for error in field.errors %}
        <span class="help-block">{{ error }}</span>
        {% endfor %}
      </div>
      <div class="form-group">
        <label for="{{ form.tags.id_for_label }}">{{ form.tags.label }}</label>
        {% render_field form.tags type="text" data-role="tagsinput" class="form-control tags" name="tags" placeholder="Max 7 tags" %}
        {% for error in field.errors %}
        <span class="help-block">{{ error }}</span>
        {% endfor %}
      </div>
      <input type="submit" value="Post" class="btn btn-primary btn-lg"></input>
    </form>
  </div>
</div>
</div>

<script src="{% static 'tinymce/tinymce.min.js' %}"></script>
<script>
tinyMCE.init({
  mode : "textareas",
  plugins: 'quickbars wordcount preview codesample imagetools hr link spellchecker lists media fullscreen autoresize',
  toolbar: 'fullscreen undo redo ',
  menubar: 'false',
  quickbars_insert_toolbar: ' media quickimage pageembed | bullist numlist | hr',
  quickbars_selection_toolbar: 'bold italic underline blockquote | h1 h2 codesample | link | alignleft aligncenter alignright alignjustify | preview',
  quickbars_image_toolbar: 'alignleft aligncenter alignright | blockquote',
});</script>
{% endblock article_content %}

我刚刚意识到这根本不起作用。当我尝试编辑文本区域时,一切都很好,但当我向db提交内容时,似乎什么都没有。希望有人知道这件事。
TINYMCE_JS_URL = STATIC_URL + '/tinymce/tinymce.min.js'
TINYMCE_JS_ROOT = MEDIA_URL + "tinymce"
TINYMCE_DEFAULT_CONFIG = {
    # 'plugins': "image, imagetools,table,spellchecker,wordcount",
    # 'theme': "silver",
    'mode': 'textareas',
    'cleanup_on_startup': True,
    'custom_undo_redo_levels': 10,
    'min_height': 500,
    # 'toolbar': [
    #     'undo redo | bold italic underline | fontselect fontsizeselect',
    #     'forecolor backcolor | alignleft aligncenter alignright alignfull | numlist bullist outdent indent'
    # ],
    # 'skin': {'content': 'dark', 'ui': 'oxide-dark'}
    # 'inline': True,
    # 'selector': 'div.tinymce',
    'plugins': ['quickbars', 'wordcount', 'preview', 'codesample', 'imagetools', 'hr', 'link', 'spellchecker', 'lists', 'media', 'fullscreen', 'autoresize'],
    'toolbar': ['fullscreen undo redo '],
    # 'menubar': False,
    # 'statusbar': False,
    'quickbars_insert_toolbar': ' media quickimage pageembed | bullist numlist | hr',
    'quickbars_selection_toolbar': 'bold italic underline blockquote | h1 h2 codesample | link | alignleft aligncenter alignright alignjustify | preview',
    'quickbars_image_toolbar': 'alignleft aligncenter alignright | blockquote | '
}
# TINYMCE_SPELLCHECKER = True
# TINYMCE_COMPRESSOR = True
# TINYMCE_EXTRA_MEDIA = {
#     'css': {
#         'all': [
#             ...
#         ],
#     },
#     'js': [
#         ...
#     ],
# }