django-bleach

ソフトウェアのスクリーンショット:
django-bleach
ソフトウェアの詳細:
バージョン: 0.1.4
日付のアップロード: 20 Feb 15
開発者: Tim Heap
ライセンス: 無料
人気: 2

Rating: 4.0/5 (Total Votes: 1)

ジャンゴ·漂白剤は、漂白剤とユーザーHTMLをサニタイズするためのDjangoのアプリです。
漂白剤は、任意のHTML入力を受け取り、Pythonのモジュールであり、HTMLタグ、属性およびスタイルのみ許可されたサブセットが含まれている有効な、消毒HTMLを返します。ジャンゴ·漂白剤は、非常に簡単に漂白剤を使用して行うのDjangoアプリです。
のセットアップ
1. PIP経由ジャンゴ·漂白剤をインストールします。
 インストールジャンゴ·漂白剤ピップ
2.あなたのINSTALLED_APPSにジャンゴ·漂白剤を追加します。
  INSTALLED_APPS = [
 #...
  'django_bleach」、
 #...
 ]
3.許可されたタグ、属性やスタイルのためのいくつかの賢明なデフォルトを選択します。と未知のタグが発生した行動。これらのそれぞれはオプションであり、漂白剤のデフォルトを使用して、デフォルトに。漂白剤のマニュアルを参照してください:
  HTMLタグが許可されている#
  BLEACH_ALLOWED_TAGS = ['P'、 'B'、 'i'は、 'U' '日'、 '強い'、 'A']
  HTML属性が許可されている#
  BLEACH_ALLOWED_ATTRIBUTES = ['HREF'、 'タイトル'、 'スタイル']
  CSSプロパティが 'スタイル」で許可されている属性に#が(と仮定すると
 #スタイルが許可された属性です)
  BLEACH_ALLOWED_STYLES = [
  'フォントファミリ'、 'フォントの太さ'、 'テキスト装飾'、 'フォントバリアント']
 #ストリップ未知のタグTrueの場合には、HTMLがあれば文字をエスケープと交換
 #偽
  BLEACH_STRIP_TAGS =真
 #ストリップのコメント、またはそれらを残す。
  BLEACH_STRIP_COMMENTS =偽
漂白フィールドのデフォルトウィジェットを選択します。 django.forms.Textareaこのデフォルトは、しかし、あなたはおそらく、WYSIWYGエディタ、または類似した何かでそれを置き換えることになるでしょう。
 #漂白したHTMLフィールドのCKEditorWidgetを使用してください
  BLEACH_DEFAULT_WIDGET = 'wysiwyg.widgets.WysiwygWidget」
私は私のプロジェクトでジャンゴ·CKEditorバージョンを使用していますが、あなたは何を使用すると、あなた次第です。
の使用法
あなたのモデルでは
ジャンゴ·漂白剤は、漂白された出力を作成する3つの方法を提供します。自動的にサニタイズされ、ユーザーが編集可能なHTMLコンテンツを含む最も簡単な方法は、BleachFieldモデルフィールドを使用することです:
アプリ/ models.pyで#
Djangoの輸入モデルから
django_bleach.models輸入BleachFieldから
クラスポスト(models.Model):
 タイトル= models.CharField()
 コンテンツ= BleachField()
 #...
BleachFieldは漂白剤の出力をカスタマイズするには、次の引数を取ります。それらの使用のための漂白剤のマニュアルを参照してください:
- allowed_tag​​s
- allowed_attributes
- allowed_styles
- に対してstrip_tags
- するstrip_comments
漂白剤固有の引数に加えて、BleachFieldモデルフィールドは、通常のフィールド属性のすべてを受け入れます。舞台裏では、それは、TextFieldで、デフォルトのTextFieldがそうであるように、すべて同じ引数を受け付けます。
BleachFieldモデルフィールドは、すべての作業を行うためにBleachFieldフォームフィールドを利用します。それは衛生化施設自体を提供していません。これはバグと考えられているが、きれいな解決策はまだ実装されていません。この固定でもプル要求は感謝適用されます。 BleachFieldモデルフィールドはのみBleachFieldフォームフィールドで使用されている限り、問題はないでしょう。そうでない場合、消毒HTMLを保証することができない。
あなたのフォームで
BleachFieldフォームフィールドが設けられている。このフィールドには、ユーザーからのHTML入力をsanitises、そしてDjangoアプリケーションへの安全な、きれいなHTMLを提示します。ほとんどの作業が行われる場所である。
あなたのテンプレートで
テンプレートに印刷する必要がどこかからのコンテンツのpeiceをお持ちの場合は、漂白剤のフィルタを使用することができます。
{%の負荷bleach_tagsは%}
{{some_unsafe_content |漂白剤}}
フィルタは引数を取りません。それはあなたのアプリケーションの設定で定義されたデフォルト設定を使用しています。

の要件の:ます。

  • のPythonます。
  • ジャンゴます。

開発者の他のソフトウェア Tim Heap

wagtailnews
wagtailnews

1 Mar 15

django-pronouns
django-pronouns

14 Apr 15

へのコメント django-bleach

コメントが見つかりません
コメントを追加
画像をオンにする!