如何使用django-ckeditor在admin中的服务器上上传文件和浏览器文件?

我们是万

我整天都被这个问题困住了。

我已经在github上仔细阅读了django-ckeditor的文档,但是还不够详细。给定的演示太复杂了。有没有更简单的方法来实现上传和浏览。如果可以通过在views.py,urls.py和setting.py中添加几行来实现,那么我将很容易实现它。

PS:我是django的新来者。

urls.py

from django.conf.urls import include, url

urlpatterns = [

    url(r'^$', 'guitar.views.home', name='home'),


    url(r'^ckeditor/', include('ckeditor_uploader.urls')),

]

settings.py

import os


BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))


STATIC_URL = '/static/'

STATICFILES_DIRS = (
    os.path.join(BASE_DIR, "static"),
)



MEDIA_URL = "image_upload/"
MEDIA_ROOT = os.path.join(BASE_DIR, "image_upload")




# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/1.8/howto/deployment/checklist/

# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = ')7sn#y%9dgm!pxl#c$ws_jld!%2lbvj5tg*jlqnaelc)+$bp*%'

# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True

ALLOWED_HOSTS = []



INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'bootstrap3',
    'guitar',
    'ckeditor',
)

MIDDLEWARE_CLASSES = (
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
    'django.middleware.security.SecurityMiddleware',
)

ROOT_URLCONF = 'DemoGuitarProject.urls'


TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, 'templates')]
        ,
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

WSGI_APPLICATION = 'DemoGuitarProject.wsgi.application'



# Database
# https://docs.djangoproject.com/en/1.8/ref/settings/#databases

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}



# Internationalization
# https://docs.djangoproject.com/en/1.8/topics/i18n/

LANGUAGE_CODE = 'en-us'
TIME_ZONE = 'UTC'
USE_I18N = True
USE_L10N = True
USE_TZ = True






CKEDITOR_UPLOAD_SLUGIFY_FILENAME = False
CKEDITOR_JQUERY_URL = 'http://libs.baidu.com/jquery/2.0.3/jquery.min.js'
CKEDITOR_IMAGE_BACKEND = "pillow"
CKEDITOR_UPLOAD_SLUGIFY_FILENAME = True
CKEDITOR_UPLOAD_PATH = "image_upload/"


# config ckeditor
CKEDITOR_CONFIGS = {
    'default': {
        'toolbar': (
            ['div', 'Source', '-', 'Save', 'NewPage', 'Preview', '-', 'Templates'],
            ['Cut', 'Copy', 'Paste', 'PasteText', 'PasteFromWord', '-', 'Print', 'SpellChecker', 'Scayt'],
            ['Undo', 'Redo', '-', 'Find', 'Replace', '-', 'SelectAll', 'RemoveFormat'],
            ['Form', 'Checkbox', 'Radio', 'TextField', 'Textarea', 'Select', 'Button', 'ImageButton', 'HiddenField'],
            ['Bold', 'Italic', 'Underline', 'Strike', '-', 'Subscript', 'Superscript'],
            ['NumberedList', 'BulletedList', '-', 'Outdent', 'Indent', 'Blockquote'],
            ['JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock'],
            ['Link', 'Unlink', 'Anchor'],
            ['Image', 'Flash', 'Table', 'HorizontalRule', 'Smiley', 'SpecialChar', 'PageBreak'],
            ['Styles', 'Format', 'Font', 'FontSize'],
            ['TextColor', 'BGColor'],
            ['Maximize', 'ShowBlocks', '-', 'About', 'pbckcode'],
        ),
    }
}

views.py

from django.shortcuts import render


def home(request):

    return render(request, 'home.html')

models.py

# coding:utf-8
from django.template.defaultfilters import slugify
from django.db import models
from ckeditor.fields import RichTextField


class Article(models.Model):
    title = models.CharField('title', max_length=256)
    content = RichTextField('contents')
    pub_date = models.DateTimeField('express_time', auto_now_add=True, editable=True)
    update_time = models.DateTimeField('update_time',auto_now=True, null=True)


    def __str__(self):
        return self.title      



class Category(models.Model):

    name = models.CharField(max_length=128, unique=True)

    def __str__(self):
        return self.name

管理员

from django.contrib import admin
from .models import Article, Category



admin.site.register(Article)
admin.site.register(Category)
伊万·克瓦斯(Ivan Kvas)

更换RichTextField('contents')RichTextUploadingField('contents'),并添加下一行

from ckeditor_uploader.fields import RichTextUploadingField

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用django-ckeditor在admin中的服务器上上传文件和浏览器文件?

来自分类Dev

Web浏览器如何确定从服务器接收的文件中的入口点?

来自分类Dev

如何从服务器发送要在客户端浏览器中打开的 html 文件?

来自分类Dev

使用Kik浏览器上传文件

来自分类Dev

如何使用chrome作为浏览器和nginx作为网络服务器清除缓存的javascript文件

来自分类Dev

如何使用 httpd.conf 防止从客户端浏览器访问服务器中的某种文件

来自分类Dev

当文件位于其他服务器上时,使用ASP.Net MVC在浏览器中强制下载文件,而无需先在我的服务器上下载文件

来自分类Dev

使用PHP在我的Owncloud服务器上上传文件

来自分类Dev

使用AngularJS和php服务器脚本上传文件

来自分类Dev

如何使我的服务器上的文件可用于客户端网络浏览器,用 Java 编写的服务器

来自分类Dev

如何将大文件直接下载到磁盘,而不将其存储在服务器和浏览器的RAM中?

来自分类Dev

正在下载扩展名为 .log 的日志文件,而不是使用 nginx 服务器在浏览器中打开

来自分类Dev

如何允许WAMP服务器中的DLL文件上传

来自分类Dev

如何上传文件到服务器?

来自分类Dev

在实时服务器上上传文件时如何显示“维护中的站点”消息?

来自分类Dev

如何从Go服务器在浏览器中下载文件

来自分类Dev

如何使浏览器提示用户保存服务器动态生成的文件?

来自分类Dev

如何在浏览器的FTP服务器上下载文件?

来自分类Dev

使用服务器推送将文件推送到浏览器后,如何在浏览器缓存中保存文件?

来自分类Dev

使用VPN浏览服务器文件

来自分类Dev

Django是在服务器上还是在浏览器中执行脚本?

来自分类Dev

使用curl将文件上传到django服务器

来自分类Dev

使用python将文件上传到Django服务器

来自分类Dev

Django文件浏览器tinymce-无法上传图像

来自分类Dev

如何通过ssh在php中获取远程文件并将文件直接返回到浏览器响应,而无需在网络服务器上创建文件的副本

来自分类Dev

如何在浏览器中确定和记录远程服务器的延迟

来自分类Dev

c#使用FTP将本地文件上传到服务器。C#文件位于服务器上

来自分类Dev

在Ubuntu 14.04上无法使用任何浏览器上传文件,为什么?

来自分类Dev

在 Django 中,如何在浏览器上呈现 static/base.html 文件?

Related 相关文章

  1. 1

    如何使用django-ckeditor在admin中的服务器上上传文件和浏览器文件?

  2. 2

    Web浏览器如何确定从服务器接收的文件中的入口点?

  3. 3

    如何从服务器发送要在客户端浏览器中打开的 html 文件?

  4. 4

    使用Kik浏览器上传文件

  5. 5

    如何使用chrome作为浏览器和nginx作为网络服务器清除缓存的javascript文件

  6. 6

    如何使用 httpd.conf 防止从客户端浏览器访问服务器中的某种文件

  7. 7

    当文件位于其他服务器上时,使用ASP.Net MVC在浏览器中强制下载文件,而无需先在我的服务器上下载文件

  8. 8

    使用PHP在我的Owncloud服务器上上传文件

  9. 9

    使用AngularJS和php服务器脚本上传文件

  10. 10

    如何使我的服务器上的文件可用于客户端网络浏览器,用 Java 编写的服务器

  11. 11

    如何将大文件直接下载到磁盘,而不将其存储在服务器和浏览器的RAM中?

  12. 12

    正在下载扩展名为 .log 的日志文件,而不是使用 nginx 服务器在浏览器中打开

  13. 13

    如何允许WAMP服务器中的DLL文件上传

  14. 14

    如何上传文件到服务器?

  15. 15

    在实时服务器上上传文件时如何显示“维护中的站点”消息?

  16. 16

    如何从Go服务器在浏览器中下载文件

  17. 17

    如何使浏览器提示用户保存服务器动态生成的文件?

  18. 18

    如何在浏览器的FTP服务器上下载文件?

  19. 19

    使用服务器推送将文件推送到浏览器后,如何在浏览器缓存中保存文件?

  20. 20

    使用VPN浏览服务器文件

  21. 21

    Django是在服务器上还是在浏览器中执行脚本?

  22. 22

    使用curl将文件上传到django服务器

  23. 23

    使用python将文件上传到Django服务器

  24. 24

    Django文件浏览器tinymce-无法上传图像

  25. 25

    如何通过ssh在php中获取远程文件并将文件直接返回到浏览器响应,而无需在网络服务器上创建文件的副本

  26. 26

    如何在浏览器中确定和记录远程服务器的延迟

  27. 27

    c#使用FTP将本地文件上传到服务器。C#文件位于服务器上

  28. 28

    在Ubuntu 14.04上无法使用任何浏览器上传文件,为什么?

  29. 29

    在 Django 中,如何在浏览器上呈现 static/base.html 文件?

热门标签

归档