0

在 Django 管理界面中,有些部分在我添加新部分时不会在表单中显示 WYSIWYG HTML 编辑器。

# models.py
class CustomSectionBase(models.Model):
    name = models.CharField(max_length = QUARTER_SIZE, verbose_name = 'Name', null = True, blank = True, default = None)
    body = HTMLField(verbose_name = "Body Text")

    class Meta:
        abstract = True
        verbose_name_plural = "Custom Sections"
        verbose_name = "Custom Section"
        ordering = ['name']

    def __unicode__(self):
        return self.name

    def __repr__(self):
        return unicode(self)

class CompanyCustomSection(CustomSectionBase):
    company = models.ForeignKey(Company, verbose_name = 'Company')

在管理界面中:

# admin.py
class CompanyCustomSectionInline(NestedStackedInline):
    model = models.CompanyCustomSection
    list_display = ('name', 'body')
    extra = 0

当我运行它时,CompanyCustomSections 出现,TinyMCE WYSIWYG HTML 编辑器body按预期附加到该字段。但是,当我在管理界面中单击“添加另一个自定义部分”时,出现的空白表单具有该body字段的纯文本文本区域,而不是所见即所得编辑器。

我环顾四周,发现一些人遇到了 TinyMCE 编辑器消失的问题,并尝试了他们的一些解决方案。我尝试将 TinyMCE Javascript 文件添加到js属性中,CompanyCustomSectionInline并尝试使用自定义ModelForm来确保为创建和编辑模型提供相同的表单,但无济于事。

即使您没有解决方案,我也将不胜感激。

4

0 回答 0