我在这里有点麻烦。我正在将一个网站从 html 转换为 Django 驱动的网站,它没有特殊内容,只有 3 个页面(cv/about/projects),有点像网络投资组合。
我想使用 CKEditor 通过管理界面启用页面编辑。我还希望能够使用 Django 模板。
从 CK 编辑界面创建页面并将内容添加到“内容”字段时,我无法将页面作为模板访问。
我认为对我的问题很重要的代码:
模型.py:
from django.db import models
from ckeditor.fields import HTMLField
class Page(models.Model):
title = models.CharField(max_length=30)
content = HTMLField(blank=True, verbose_name='HTML version')
def __unicode__(self):
return self.title
视图.py:
def cv(request):
cv = Page.objects.filter(id=2)
content = ([p.content for p in cv])
return HttpResponse(content)
网址.py:
url(r'^cv$', cv),
我阅读了 Context & loader 以使用模板使页面动态化,所以我写了这个视图:
视图.py:
from django.template import Context, loader
def about(request):
about = Page.objects.filter(id=1)
t = loader.get_template('about.html')
ct = Context({
'about': about
})
return HttpResponse(t.render(ct))
但随后我需要通过它们各自的 .html 文件更新页面,并且 CKEdit 接口无法访问我的页面。任何人都知道我要重构什么,添加以能够使用 Django 模板来编辑我的页面?(使用 {% block content %}{% endblock %} )同时仍然能够使用 CKEditor 来编辑这些页面的内容。