2

我已将 CKEditor 集成到我的 django 应用程序中,我可以轻松地将文本保存到我的数据库中。但我找不到编辑该数据的方法。我无法找到将文本加载到 ckeditor 的方法。

模型.py

class BlogContent(models.Model):
    emailID = models.EmailField()
    username = models.CharField(max_length=20)
    blogID = UUIDField(auto=True)
    blogHead = models.CharField(max_length=200)
    blogBody = RichTextField()
    blogDateTime = models.DateTimeField(auto_now=True)

表格.py

class addBlog(forms.ModelForm):

    class Meta:

        model = BlogContent
        fields = ['blogHead', 'blogBody']
        widget = {'blogBody': CKEditorWidget()}

视图.py

def addNewArticle(request):
    form = addBlog()
    args = {"form": form}
    args.update(csrf(request))
    return render_to_response("addNewArticle.html", args)

我如何做到这一点?

4

1 回答 1

2

只需将内部带有哈希的 Form 实例化,该哈希必须具有下一个结构:

{"field_name": "value"}

所以只需更改这一行:

 form = addBlog()

对于这个:

 form = addBlog({"blogBody": "valueFromDatabase"})

这可以与ModelForm或一起使用Forms,但ModelForms您也可以从 ModelForm 使用的模型中传递一个实例,因此这也可以。

 instance = BlogContent.objects.get(id=1)
 form = addBlog(instance=instance)
于 2014-07-30T04:01:35.880 回答