Djangoはxadmin統合リッチテキストエディタUeditor(方法II)を使用しています

、xadminのインストールと設定
1、インストールxadmin、前記第一の取付のpython3が失敗し、第二又は第三の推奨

1  モード1:インストールxadminのPIP
 2第二の方法:PIP + GitリポジトリのGitをインストールします。//github.com/sshwsfc/ xadmin.gitを
 。3つの 3つの方法:ダウンロードhttps://codeload.github.com/sshwsfc/xadmin/zip/ マスターZipファイル、ディレクトリ解凍し、入力
 4の直接のpython setup.pyインストール

内部のsettings.pyに登録2、

1 INSTALLED_APPS = 2      ........ 
3      ' xadmin ' 4      'のcrispy_forms ' 5

3、urls.pyを修正

輸入xadminの
urlpatterns = [
     #のURL(R '^管理/'、admin.site.urls)、 
    URL(R ' ^ xadmin / ' 、xadmin.site.urls)、
]


4、adminx.pyの下で新たなアプリケーション

インポートxadminの
xadmin.site.register(レベル)アプリケーション名

5、ジャンゴを開始

python manage.py makemigrations 
のpython manage.py移行
するrunserverのpython manage.pyを 8000

あなたが訪問することができます成功した場合は
6を、訪問

http://あなたのIP:8000 / xadmin /

 

二、DjangoUeditorのインストールと設定
1、インストールDjangoUeditor、python2ののpython3と、それを明確にします。

方法1:https://github.com/twz915/DjangoUeditor3/ダウンロードコマンドライン実行時にソースパッケージを:のpython setup.pyインストール
方法2を:コマンドラインツールピップの実行(推奨)を使用します。DjangoUeditorをインストールPIP

INSTALL_APPSを増加させる2は、以下:

INSTALLED_APPS = ........ 
    ' DjangoUeditor ' 

setting.py 3、他の構成

1 UEDITOR_SETTINGS = {
 2      ツールバー:{ #1 列の複数の定義を可能にする、ツールバー複数のディスプレイを定義するボタン
3。         NAME1 :[ ソース| 太字斜体下線' ]]、
 4          " NAME2 " :[]
 。5      }、
 6。     " images_upload " :{
 7。         "allow_type " JPG、PNG "#の定義がアップロードピクチャタイプ可能
。8          " MAX_SIZE "" 2222キロバイト"  #の定義は、画像サイズが0で無制限を意味アップロード可能
9。     }、
 10      " files_upload " :{
 。11          " allow_type "" ZIPを、RARは#の定義は、アップロードファイルの種類可能
12である         MAX_SIZE 2222キロバイトは、 #の定義は、アップロードファイルサイズを可能0限定しないことが
13      }、
 14      image_manager ":{
 15          " LOCATION """  #1 位置画像マネージャは、指定されていない場合、デフォルトのパスは同じで画像をアップロードする
16      }
 。17  }
 18は MEDIA_URL = ' /アップロード/ ' 
19 MEDIA_ROOTのそれos.path.join =(BASE_DIR、アップロード/ これはブラウザでアップロードされたファイルにアクセスするための接頭辞URLです        

説明:
UEditorFieldはmodels.TextFieldから継承されたので、あなたが直接UEditorFieldに直接定義することができるモデルをmodels.TextFieldすることができます。
:UEditorFieldは、追加のパラメータを提供
ツールバーを:あなたは、通常のミニ、フル、besttome、一般的に、小さなすべてを代表して、スタイルがペイントWeizhong寄与の文字列を表示したい設定のツールバー。デフォルトのツールバーが要件を満たしていない場合は、内部のディスプレイの設定ボタンを設定することができます。手順については、以下を参照してください。
IMAGEPATH:例えば、「{{MEDIA_ROOT}} /画像をアップロードするための「画像/」などの画像アップロードパス、 」 フォルダを
除いたファイルパスを指定して:そのような「ファイル/」などの附属書アップロードパスを、「{{MEDIA_ROOTを}}アップロードします/ファイル「フォルダ
scrawlPathを:落書きファイルアップロードパスを、のような」直筆のサイン/「アップロードする」{{MEDIA_ROOT}} /直筆のサイン 」 フォルダをデフォルト=のImagePath指定されていない場合
imageManagerPath:パスピクチャマネージャが表示され、等"IMGLIB /"、 "{{MEDIA_ROOT}} / IMGLIBをアップロードする 、" デフォルト=のImagePathを指定されていない場合。
オプション:UEditor他のパラメータ、辞書タイプ。内部Ueditor ueditor_config.js文書の説明を参照してください。
CSS:CSSスタイルエディタのテキストエリアの
幅、高さ:ピクセル単位での編集の幅と高さ。

3、URLを設定します

django.conf.urls.static インポート静的
 から django.conf インポート設定
URL(R ' ^ ueditor / '、(含める' DjangoUeditor.urlsを' ))
] +静的(settings.MEDIA_URL、DOCUMENT_ROOT = settings.MEDIA_ROOT)

図4に示すように、構成adminx.py

webedit.modelsはインポート *
 クラスLevelAdmin(オブジェクト):
    style_fields = { " コンテンツ"" ueditor " } 
xadmin.site.register(レベル、LevelAdmin)

5、xadmin設定
xadmin /プラグインで新しいueditor.py

輸入xadmin
 から xadmin.viewsはインポートBaseAdminPlugin、CreateAdminView、ModelFormAdminView、UpdateAdminViewを
 から DjangoUeditor.models インポートUEditorFieldを
 から DjangoUeditor.widgets インポートUEditorWidgetを
 から django.conf インポート設定の

クラスXadminUEditorWidget(UEditorWidget):
     デフ __init__(自己、** kwargsから):
        セルフ。 ueditor_options = kwargsから
        self.Media.js = なし
        スーパー(XadminUEditorWidget、自己)。__init__ (kwargsから)

クラスUeditorPlugin(BaseAdminPlugin):

    デフ get_field_style(自己、attrsに、db_field、スタイル、** kwargsから):
         もしスタイル== ' ueditor ' もしでisinstance(db_field、UEditorField):
                ウィジェット = 。db_field.formfield()ウィジェット
                のparam = { } 
                param.update(widget.ueditor_settings)
                param.update(widget.attrs)
                リターン { ' ウィジェット':XadminUEditorWidget(** PARAM)}
         戻りATTRS 

    DEFblock_extrahead(自己、文脈ノード):
        JS = ' <スクリプトタイプ= "テキスト/ javascriptの" SRC = "%sは"> </ script>の'%(settings.STATIC_URL + " ueditor / ueditor.config.js "自己的静态目录 
        JS + = ' <スクリプトタイプ= "テキスト/ javascriptの" SRC = "%sは"> </ script>の'%(settings.STATIC_URL + " ueditor / ueditor.all.js "自己的静态目录
        nodes.append(JS)

xadmin.site.register_plugin(UeditorPlugin、UpdateAdminView)
xadmin.site.register_plugin(UeditorPlugin、CreateAdminView) 
在xadmin /プラグイン/ __init__ueditorを追加するの.py
 ' ueditor '                

6、モデルでueditor項目を追加

DjangoUeditor.modelsがインポートUEditorFieldの
    コンテンツを = UEditorField(verbose_name = ' 内容'、高さ= 500、幅= 1000、デフォルト= U ''、IMAGEPATH = " Article_img / %% Y / %%のM / "、ツールバー= ' 完全'ファイルパス= ' %% Y / %% M / '、upload_settings = { " imageMaxSize ":1204000}、設定= {}、コマンド=なし)    

静的にdjangoueditorで静的ファイルをコピーし、あなたは、次のアプリケーションの使用を開始することができます


7、ページのリッチテキスト(Djangoの自動エスケープ通常表示に近いです)

{%のautoescapeオフ%} 
{{item.content}} 
{%endautoescapeの%}

 

オリジナルリンクします。https://blog.csdn.net/bbwangj/article/details/80883931

おすすめ

転載: www.cnblogs.com/zmdComeOn/p/11345418.html