在django-ckeditor中上传图像时如何禁用非管理员的浏览服务器选项?

时间:2019-07-14 10:39:29

标签: django django-ckeditor django-filebrowser

我在django上有一个博客,任何公众都可以在上面发布。在帖子内容中,我使用的是django-ckeditor RichTextUploadingField。

在ckeditor中有一个“浏览服务器中的图像”按钮,该按钮使用户可以浏览服务器上载目录的图像并将图像嵌入到帖子中。

但是,我要限制公众在发帖时浏览服务器上的图像。他们应该只能上传图片,而不能浏览上传的服务器上的每张图片。

这是我的模特。py


class Article(models.Model):
    title = models.CharField(max_length = 200)
    content = RichTextUploadingField()
    author = models.ForeignKey(User, on_delete= models.CASCADE, null=True)

    def __str__(self):
        return self.title

Forms.py


class ArticleForm(ModelForm):
    class Meta:
        model = Article
        widgets = {
            'content': RichTextUploadingField()
        }

1 个答案:

答案 0 :(得分:1)

未提供删除此功能的直接设置,但可以使用CKEDITOR_RESTRICT_BY_USER = True来实现相同功能。 来自文档的参考:

将项目的CKEDITOR_RESTRICT_BY_USER设置为True settings.py文件(默认为False)。这限制了对上载的访问 到uploading user的图片(例如,每个用户只能看到和上传 自己的图片)。上载路径的前缀为 get_username。如果CKEDITOR_RESTRICT_BY_USER设置为string,则 而是使用named属性。超级用户仍然可以看到所有图像。 注意:此限制仅在CKEditor介质中强制实施 浏览器。