Я пытаюсь расширить мою пользовательскую User
модель, как описано здесь .Это прекрасно работает для показанных полей, таких как ModelChoiceField
и CharField
.Теперь моя цель - добавить поле RTF
(элемент управления, подобный показанному в модели Page
).Я просмотрел исходный код wagtail
и нашел метод get_rich_text_editor_widget
, который используется в сочетании с CharField
.К сожалению, я получаю JavaScript
ошибку:
Uncaught TypeError: Невозможно прочитать свойство 'initEditor' из неопределенного
Теперь я предполагаю, что мне как-то нужно включить или изменитькрючок для виджета.Или достаточно переопределить блок JavaScript
в шаблоне?Сейчас это кажется немного хакерским, и я застрял с включением необходимого JS
, поэтому я отправляю вопрос.Может быть, мне не хватает чего-то тривиального.
# ...
from wagtail.admin.rich_text import get_rich_text_editor_widget
class CustomUserEditForm(UserEditForm):
position = forms.ModelChoiceField(queryset=Position.objects, required=True, label=_('Position'))
# biography = forms.Textarea()
biography = forms.CharField(widget=get_rich_text_editor_widget())
Обновление: Обновление моего шаблона (возможно, не правильный подход):
{% block js %}
{{ block.super }}
<script type="text/javascript" src="/static/wagtailadmin/js/draftail.js"></script>
{% endblock js %}
Результаты: