- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我一直按照 https://github.com/django-ckeditor/django-ckeditor 上的说明进行操作,并删除数据库以注册 RichTextField()。我的 models.py 是:
#!/usr/bin/python
import settings
from ckeditor.fields import RichTextField
from django.db import models
class Page(models.Model):
title = models.CharField(max_length = 255)
body = RichTextField()
location = models.CharField(max_length = 255, verbose_name = "URL")
keywords = models.CharField(max_length = 255, blank = True)
meta_description = models.CharField(max_length = 255, blank = True)
script = models.TextField(blank = True)
def __unicode__(self):
return 'Page "' + self.title + '" at ' + self.location
class Meta:
ordering = ['title']
但是,ckeditor 并未显示在“正文”字段中,并且查看管理页面编辑器的页面源代码后发现,没有提及 ckeditor。
JavaScript 包含的内容是:
<title>Add page | Django site admin</title>
<link rel="stylesheet" type="text/css" href="/static/admin/css/base.css" />
<link rel="stylesheet" type="text/css" href="/static/admin/css/forms.css" />
<!--[if lte IE 7]><link rel="stylesheet" type="text/css" href="/static/admin/css/ie.css" /><![endif]-->
<script type="text/javascript">window.__admin_media_prefix__ = "/static/admin/";</script>
<script type="text/javascript" src="/admin/jsi18n/"></script>
<script type="text/javascript" src="/static/admin/js/core.js"></script>
<script type="text/javascript" src="/static/admin/js/admin/RelatedObjectLookups.js"></script>
<script type="text/javascript" src="/static/admin/js/jquery.js"></script>
<script type="text/javascript" src="/static/admin/js/jquery.init.js"></script>
<script type="text/javascript" src="/static/admin/js/actions.js"></script>
我可以/应该做什么,以便“页面”的“正文”字段具有用于其小部件的 CKeditor?
最佳答案
我知道这是一个老问题,但尚未得到解答,它可能对其他人有帮助......
以下是我在 django 上使用 Ckeditor 时遵循的步骤。
1.将“ckeditor”添加到settings.py上已安装的应用程序
2.在settings.py中添加ckeditor配置变量。 (上传位置和工具)
CKEDITOR_UPLOAD_PATH = MEDIA_ROOT
CKEDITOR_BASEPATH = os.path.join(STATIC_ROOT, "ckeditor/")
CKEDITOR_CONFIGS = {
'default': {
'toolbar': [
['Undo', 'Redo',
'-', 'Bold', 'Italic', 'Underline',
'-', 'Link', 'Unlink', 'Anchor',
'-', 'Format',
'-', 'SpellChecker', 'Scayt',
'-', 'Maximize',
'-', 'Language',
],
],
'height': '100%',
'width': '100%',
'toolbarCanCollapse': False,
},
'full': {
'toolbar': [
['Undo', 'Redo',
'-', 'Bold', 'Italic', 'Underline', 'NumberedList', 'BulletedList',
'-', 'Outdent', 'Indent', 'Blockquote', 'CreateDiv',
'-', 'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock',
'-', 'TextColor', 'BGColor',
'-', 'Maximize', 'ShowBlocks', #'Image' ,
'-', 'Cut', 'Copy', 'Paste', 'PasteText',
],
['-', 'SpecialChar',
'-', 'Source',
],
[
'-', 'Styles', 'Format', 'Font', 'FontSize'
],
[
'-', 'BidiLtr', 'BidiRtl'
]
],
'width': '100%',
'height': '600px',
'toolbarCanCollapse': False,
},
'disable': {
'toolbar': [],
'width': '100%',
'height': '600px',
'toolbarCanCollapse': False,
},
}
3.为模型添加ckeditor
from django.db import models
from ckeditor.fields import RichTextField
class Article(models.Model):
content = RichTextField(default="")
4.最后,当您在表单中添加 ckeditor 小部件时,奇迹就会发生:
from django import forms
from django.utils.translation import ugettext_lazy as _
from ckeditor.widgets import CKEditorWidget
from apps.articles.models import Article
class ArticleForm(forms.ModelForm):
content = forms.CharField(widget=CKEditorWidget(config_name='full'), label=_('Content'))
class Meta:
model = Article
当然,别忘了
python manage.py collectstatic
将所有静态数据获取到静态目录,并且
python manage.py makemigrations model_name
python manage.py migrate model_name
创建数据库字段。
还有一件事!使用表单时将其添加到页面头部,以便加载 ckeditor 工作所需的脚本
{{ form_name.media }}
;-)
关于javascript - 如何让我的 django-ckeditor 安装被识别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27321396/
我正在构建一个使用 javascript 向页面动态添加元素的 Web 应用程序,然后可以使用 contentEditable="true" 对其进行编辑和 CKEditor . 目前,如果我使用 c
目前我遇到以下问题,我正在使用 CKEDITOR 4.x 中的 applyStyle 方法应用 span 标签。但是当一个跨度被部分选中并且我执行 applyStyle 方法时,一个新的跨度将被选择,
我在内联模式下使用CKEDITOR,每页有多个编辑器。为了创建它们,我使用 HTML 中的标签,然后运行执行 CKEDITOR.inline() 的脚本网页加载后立即针对它们中的每一个进行操作。 只
如何在加载编辑器上设置文本方向 [rtl]? 最佳答案 根据文档,应该这样做: CKEDITOR.config.contentsLangDirection in the CKSource manual
在 CKEditor 中,我添加了自定义图像按钮,它直接触发文件输入。但是,只有在使用 Image 插件时才能渲染图像。 我不想在工具栏上有 2 个图像按钮,有没有办法隐藏图像按钮,但仍然使用它(如显
我有一个使用 CKeditor 的 Rails 4 应用程序。在开发模式下它工作正常,但在生产中 ckeditor 不会出现,并且文本区域的位置有一个空格。 根据日志,缺少以下文件: ActionCo
如何在选择图像时启用或禁用 CKEditor 的段落按钮。我不想完全删除它。我目前使用 ckeditor 版本 4.4 最佳答案 使用editor.getCommand() + CKEDITOR.co
我在内联模式下使用CKEDITOR,每页有多个编辑器。为了创建它们,我使用 HTML 中的标签,然后运行执行 CKEDITOR.inline() 的脚本网页加载后立即针对它们中的每一个进行操作。 只
乍一看,我需要做一件简单的事情——在 CKEditor 中添加一个带有行号的栏。主要思想是作者在讨论文本时可以引用特定段落。 我试图找到一个插件,试图找到另一个带有行号的 WYSIWYG 编辑器,但没
在 CKEditor 中,我添加了自定义图像按钮,它直接触发文件输入。但是,只有在使用 Image 插件时才能渲染图像。 我不想在工具栏上有 2 个图像按钮,有没有办法隐藏图像按钮,但仍然使用它(如显
我试图修改this repo 来自定义我想在我的 Strapi 项目中使用的 CKEditor。我添加了更多插件,这就是我的 ckeditor.js 文件的样子: import ClassicEdit
当自定义 div 内部发生变化时是否会触发任何事件?我不想监听 editor.on('change'),而只是检测发生变化的 dom 元素, (删除或插入的字符)。例如: var template
我有一个像 ckeditor 一样的 textarea。 在编辑器中有一个按钮可以将内容查看为 source/html。 我在 textarea 上方有一个输入按钮,可以将 textarea 内容预览
我正在使用 2amigos ckeditor plugins在 yii2 中,我能够从 plugin_sdk_sample 创建一个示例插件,它在原始项目中工作正常,但是当我将其放入 yii2 项目时
我在我的应用程序中使用 CKEditor 5,供用户输入包含图像、媒体、表格和样式文本的文档。用户存储文档后,我会再次将其拉出进行显示。过去当我只有最通用的样式时,我会这样显示内容: 这是一个
有谁知道如何修改CKEditor右键单击上下文菜单? 我想弄清楚如何从右键单击菜单中删除“剪切、复制、粘贴、编辑 DIV”,并尝试向其中添加“插入图像、插入表格”。 最佳答案 3.6.1 版在其 AP
我一直在为此寻找解决方案有一段时间了,我发现的唯一修复只会影响文本在编辑器本身中的显示方式,而不影响生成的文本在发送/保存到其他地方时的外观。我说的是 CSS 修复之类的东西。 我正在使用 CKEdi
我需要动态更改 CKEditor 配置中的一个配置设置。 我正在编写一个插件,它将复选框添加到 CKEditor 工具栏并在选中/取消选中它时 - forcePasteAsPlainText 被更改为
如何动态更改 CKEditor 工具栏(不使用预定义的工具栏)? CKEditor Developer's Guide只告诉您如何在初始化期间设置工具栏。 我正在使用 CKEditor 3.6.4。
我使用 CKeditor 来编辑丰富的 HTML 页面,但是一些 javascript 功能依赖于 的特殊属性。触发它们的标签。 这些是极少数情况,只有 5000 多条记录的数据库中的几条记录需要触
我是一名优秀的程序员,十分优秀!