欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Django框架使用富文本編輯器Uedit的方法分析

 更新時間:2018年07月31日 12:02:55   作者:站在兩個世界的邊緣  
這篇文章主要介紹了Django框架使用富文本編輯器Uedit的方法,結(jié)合實例形式分析了Django框架中使用Uedit的安裝、配置方法及Uedit相關(guān)插件制作方法,需要的朋友可以參考下

本文實例講述了Django框架使用富文本編輯器Uedit的方法。分享給大家供大家參考,具體如下:

Uedit是百度一款非常好用的富文本編輯器

一、安裝及基本配置

官方GitHub(有詳細的安裝使用教程):https://github.com/zhangfisher/DjangoUeditor

1. settings.py

INSTALLED_APPS = [
  ...
  'DjangoUeditor',
  ...
]

2. 配置urls

from django.conf.urls import url, include
urlpatterns = [
# 富文本相關(guān)url
  url(r'^ueditor/', include('DjangoUeditor.urls')),
]

3. 字段信息

在需要使用富文本的字段所在的models.py中

from DjangoUeditor.models import UEditorField
class Articles(models.Model):
  ...
  content = UEditorField(width=1200, height=600, imagePath="article/ueditor/",
              filePath="article/ueditor/",verbose_name=u"文章內(nèi)容")
  ...

注意,在要使用ueditor的字段所在adminx.py的類中,添加

# 這樣就指定了course的detail字段使用ueditor富文本編輯器
class ArticlesAdmin(object):
  ...
  style_fields = {"content":"ueditor"}

二、Ueditor插件制作

1. 插件代碼

在extra_apps.xadmin.plugins中新建ueditor.py

import xadmin
from xadmin.views import BaseAdminPlugin, CreateAdminView, ModelFormAdminView, UpdateAdminView
from DjangoUeditor.models import UEditorField
from DjangoUeditor.widgets import UEditorWidget
from django.conf import settings
class XadminUEditorWidget(UEditorWidget):
  def __init__(self, **kwargs):
    self.ueditor_options=kwargs
    self.Media.js = None
    super(XadminUEditorWidget, self).__init__(kwargs)
class UeditorPlugin(BaseAdminPlugin):
  def get_field_style(self, attrs, db_field, style, **kwargs):
    if style == 'ueditor':
      if isinstance(db_field, UEditorField):
        widget = db_field.formfield().widget
        param = {}
        param.update(widget.ueditor_settings)
        param.update(widget.attrs)
        return {'widget': XadminUEditorWidget(**param)}
    return attrs
  def block_extrahead(self, context, nodes):
    js = '<script type="text/javascript" src="%s"></script>' % (settings.STATIC_URL + "ueditor/ueditor.config.js")
    js += '<script type="text/javascript" src="%s"></script>' % (settings.STATIC_URL + "ueditor/ueditor.all.min.js")
    nodes.append(js)
xadmin.site.register_plugin(UeditorPlugin, UpdateAdminView)
xadmin.site.register_plugin(UeditorPlugin, CreateAdminView)

2. xadmin中注冊插件

在extra_apps.xadmin.plugins.__init__.py中添加

PLUGINS = (
  ...
  'ueditor',
)

友情提醒

在Django中使用富文本編輯器

在HTML頁面中,Django處于安全考慮,將文本內(nèi)容默認轉(zhuǎn)義,我們需要關(guān)閉

來正常輸出我們的文章

{% autoescape off %}
{{ article.abstract }}
{% endautoescape %}

記錄一下,空格的轉(zhuǎn)義字符分為如下幾種:

1. &nbsp;&160#;不斷行的空白(1個字符寬度)

2. &ensp;&8194#;半個空白(1個字符寬度)

3. &emsp;&8195#;一個空白(2個字符寬度)

4. &thinsp;&8201#;窄空白(小于1個字符寬度)

平時一般用的是&nbsp;但是在中文中也許有時候更適合用&emsp;

希望本文所述對大家基于Django框架的Python程序設(shè)計有所幫助。

相關(guān)文章

  • python獲取當前文件所在目錄、獲取上級目錄的坑及解決

    python獲取當前文件所在目錄、獲取上級目錄的坑及解決

    這篇文章主要介紹了python獲取當前文件所在目錄、獲取上級目錄的坑及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • Python圖片處理之圖片采樣處理詳解

    Python圖片處理之圖片采樣處理詳解

    這篇文章將詳細為大家講解圖像采樣處理,包括原理知識、代碼實現(xiàn)和局部馬賽克處理。文中的示例代碼講解詳細,感興趣的可以跟隨小編一起動手試一試
    2022-02-02
  • python多進程并發(fā)的實現(xiàn)示例

    python多進程并發(fā)的實現(xiàn)示例

    python中的多線程無法利用多核優(yōu)勢,如果想要充分地使用多核CPU的資源,在python中大部分情況需要使用多進程,本文主要介紹了python多進程并發(fā)的實現(xiàn)示例,感興趣的可以了解一下
    2024-02-02
  • MySQLdb ImportError: libmysqlclient.so.18解決方法

    MySQLdb ImportError: libmysqlclient.so.18解決方法

    這篇文章主要介紹了MySQLdb ImportError: libmysqlclient.so.18解決方法,需要的朋友可以參考下
    2014-08-08
  • 利用python實現(xiàn)聚類分析K-means算法的詳細過程

    利用python實現(xiàn)聚類分析K-means算法的詳細過程

    K-means算法是很典型的基于距離的聚類算法,采用距離作為相似性的評價指標,即認為兩個對象的距離越近,其相似度就越大,下面通過本文給大家介紹利用python實現(xiàn)聚類分析K-means算法的詳細過程,感興趣的朋友一起看看吧
    2021-11-11
  • 用Pelican搭建一個極簡靜態(tài)博客系統(tǒng)過程解析

    用Pelican搭建一個極簡靜態(tài)博客系統(tǒng)過程解析

    這篇文章主要介紹了用Pelican搭建一個極簡靜態(tài)博客系統(tǒng)過程解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-08-08
  • python 星號(*)的多種用途

    python 星號(*)的多種用途

    這篇文章主要介紹了python 星號(*)的多種用途,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-09-09
  • 詳解python 中in 的 用法

    詳解python 中in 的 用法

    in在Python中是操作符,具體來說是成員操作符。這篇文章主要介紹了python 中in 的 用法,需要的朋友可以參考下
    2019-12-12
  • python Multiprocessing.Pool進程池模塊詳解

    python Multiprocessing.Pool進程池模塊詳解

    multiprocessing模塊提供了一個Process類來代表一個進程對象,multiprocessing模塊像線程一樣管理進程,這個是multiprocessing的核心,它與threading很相似,對多核CPU的利用率會比threading好的多
    2022-10-10
  • Python將內(nèi)容進行base64編碼與解碼實現(xiàn)

    Python將內(nèi)容進行base64編碼與解碼實現(xiàn)

    本文主要介紹了Python將內(nèi)容進行base64編碼與解碼實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03

最新評論