ckeditor:无法设置未定义的属性'dir'(django + zinnia)

时间:2017-02-21 02:36:08

标签: django ckeditor zinnia

我只在我的生产环境中遇到这个奇怪的错误。它在本地和登台时都能正常工作。

我正在使用Django==1.10.5& django-blog-zinnia==0.18.1 zinnia-wysiwyg-ckeditor==1.3 Django==1.8。我相信这个问题最近发生在我们从 https://example.com/admin/zinnia/entry/81/change/config.js/change/ 404 (Not Found) https://example.com/admin/zinnia/entry/81/change/lang/en.js/change/ GET https://example.com/admin/zinnia/entry/81/change/skins/moono-lisa/editor.css/change/ Uncaught TypeError: Cannot set property 'dir' of undefined 升级到最新版本时。

当我尝试创建博客条目时,我无法编辑内容,因为ckeditor实例未加载。错误是:

/admin/zinnia/entry/81/change/

网址为/static/ckeditor/ckeditor/ckeditor.8bd276b5ef4c.js

所以这看起来非常像ckeditor.js正在尝试根据当前的URL加载其他静态文件,并以某种方式将文件名注入当前URL。

作为一种解决方法,我进入服务器并操纵 window.CKEDITOR_BASEPATH = '/static/ckeditor/ckeditor/'; 并将此行添加到最顶层:

CKEDITOR_BASEPATH

这解决了这个问题。最大的问题是:为什么这只发生在我的一台机器上,为什么Django / zinnia没有正确设置templates/admin/change_form.html

我在这里发布这个是因为我不确定这是Django,zinnia还是zinnia-ckeditor的问题,如果有人对谁有罪有所了解,我很乐意在相关问题上重新发布这个问题在github上发布跟踪器。

编辑:

作为一种解决方法,在我的项目中,我创建了文件{% extends "admin/change_form.html" %}

  

{% block extrahead %}

     

<script>window.CKEDITOR_BASEPATH = '/static/ckeditor/ckeditor/';</script>

     

{{ block.super }}

     

{% endblock %}

     

UserId

0 个答案:

没有答案