Tinymce отлично работает в моем приложении, но не в админке - Django - PullRequest
0 голосов
/ 12 апреля 2019

В моем приложении есть форма с атрибутом content, использующая tinymce, например:

from tinymce.models import HTMLField

class SomeModel(models.Model):
   content = HTMLField('Content', null=True)

Я также настроил свой tinymce в установленных приложениях и зарегистрировал его URL.

В моем приложении все работает нормально, и пользователь может редактировать и вводить свой контент, используя tinymce.но когда я регистрирую эту модель для администратора, все поля отображаются нормально, за исключением содержимого, которое, по-видимому, не имеет никакого способа ввода (и поскольку это обязательное поле, это означает, что я не могу вводить новые элементы через администратора).

это выглядит так в админке: enter image description here

как я могу сделать tinymce также доступным на экране администратора?

бонусный вопрос:Есть ли безопасный способ использовать tinymce, позволяя пользователям использовать tinymce (в настоящее время я использую form | safe, который, как я догадываюсь, не совсем безопасен.

1 Ответ

0 голосов
/ 12 апреля 2019

Создать ModelForm

class BlogForm(ModelForm):
    body = forms.CharField(widget=TinyMCE(attrs={'cols': 80, 'rows': 30}))

Admin.py

from models import Blog
from forms import BlogForm

class BlogAdmin(ModelAdmin):
    form = BlogForm()
...