Использование django-tinymce в строке с его конфигурацией

Я использую django-tinymce и он успешно работает с полями Django Admin, а также с полями в стандартных не-Admin формах, для обновления объекта.

Теперь я пытаюсь использовать его "inline" и, хотя он отправляется и сохраняется, он не использует конфигурацию django-tinymce - указанную в моем settings.py - как другие.

У меня есть форма Django следующего вида:

class TestModelInlineUpdateForm(forms.ModelForm):
    class Meta:
        model = TestModel
        fields = ("description",)
        widgets = {"description": TinyMCE()}

А мой шаблон содержит:

  <form method="post" id="testForm">
    {% csrf_token %}
    {{ form.media }}

    <div class="tinymce" id="inline-editor">
      {{ object.description|safe }}
    </div>

    {% for hidden in form.hidden_fields %}
      {{ hidden }}
    {% endfor %}

    <input type="hidden" name="description" value="">

    <button type="submit">Update</button>
  </form>

  <script type="text/javascript">
    tinymce.init({
      selector: '#inline-editor',
      inline: true
    });

    // Set the description field to the new HTML on form submission.
    document.querySelector("#testForm").addEventListener("submit", function(ev) {
      ev.preventDefault();
      let descriptionHTML = document.querySelector("#inline-editor").innerHTML;
      let descriptionField = document.querySelector("input[name='description']");
      descriptionField.value = descriptionHTML;
      this.submit();
    });
  </script>

Мне пришлось придумать последний кусочек JS, который обеспечивает копирование отредактированного HTML из TinyMCE в скрытое поле формы, и, хотя это работает, я чувствую, что, возможно, есть лучший способ?

При загрузке страницы в консоли отображается:

SyntaxError: Ошибка разбора JSON: Неожиданный идентификатор "undefined"

.

что, вероятно, не помогает.

Вернуться на верх