【问题标题】:Django CreateView not working with TinyMCE 5Django CreateView 不适用于 TinyMCE 5
【发布时间】:2020-02-16 23:21:58
【问题描述】:

我正在尝试将 TinyMCE 5 与 Django CreateView 一起使用,但无法通过提交按钮将其保存到数据库中;表单没有被提交,即 form_valid 没有被调用。我正在使用的 HTML 模板在没有 TinyMCE 的情况下成功地与 CreateView 和 UpdateView 一起使用,并且模型被保存到数据库中。

我的模型中的一个字段是 TextArea,所以想试试 TinyMCE。我下载了 SDK 并将其存储在本地。然后我根据文档将以下内容放在头部标签中:

<script src="{% static 'tinymce/js/tinymce/tinymce.min.js' %}"></script>
<script type="text/javascript">
    tinymce.init({
        selector: '#id_description',
    });
</script>

有了这个,我可以在创建新模型和更新现有模型时看到和使用 TinyMCE 编辑器,但我不能再将新模型数据保存到数据库中。有趣的是,我仍然可以更新和保存现有数据。

由于我可以更新现有数据,但不能更新新数据,我认为这可能是一个错误。谁能确认一下。

谢谢

【问题讨论】:

  • 查看您的浏览器开发工具,网络选项卡。通过网络提交的内容是什么?
  • 我刚刚查看并在按下提交按钮时一直看到此错误:名称='description' 的无效表单控件不可聚焦。我正在使用引导程序来呈现该字段,但在更新现有数据时我看不到这一点。

标签: django tinymce


【解决方案1】:

由于 dirkgroten 指出了正确的方向,我找到了解决方案。 我在浏览器的开发工具中看到的错误 - “名称='description' 的无效表单控件不可聚焦”,引导我阅读以下文章:"Invalid form control" only in Google Chrome

将模型字段设置为空白=True,或将表单字段设置为 required=false 即可解决问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-05
    • 1970-01-01
    • 2017-04-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多