在 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
来确保为创建和编辑模型提供相同的表单,但无济于事。
即使您没有解决方案,我也将不胜感激。