Python Webアプリケーションをプログラミングするために、ユーザーが軽量マークアップ言語でテキストを入力できるテキスト領域を作成します。テキストはhtmlテンプレートにインポートされ、ページに表示されます。今日、私は、ユーザーが任意の(HTML)テキストを入力することができますテキストエリアを作成するには、次のコマンドを使用します。唯一のいくつかの(、安全な最終的には軽量)マークアップが許可されるようにPythonの軽量マークアップ言語
my_text = cgidata.getvalue('my_text', 'default_text')
ftable.AddRow([Label(_('Enter your text')),
TextArea('my_text', my_text, rows=8, cols=60).Format()])
は、どのように私はこれを変更することができますか?消毒剤を含むすべての提案は、Pythonと容易に統合できる限り、歓迎します。
私はiPythonを使ってテキストをスクリプトタグを含むいくつかのhtmlとして定義しようとしました。私は奇妙な出力を得ました:テキストはまだ同じで、HTML = '[HTML_REMOVED]'危険なタグを削除するにはこれ以外に何が必要ですか?私は3つのモードすべてを同じ結果で試しました。 –
いくつかのテストを実行しました。私はhtmlタグを入力することはできませんが、マークダウン構文のみを入力することはできません。ありがとう、それは働いた! –
HTMLを置き換えるには、safe_mode = "replace"(safe_mode = Trueは以前のバージョンとの下位互換性のために機能します)を設定します。 HTMLはmarkdown.HTML_REMOVED_TEXTで定義されたテキストに置き換えられ、デフォルトは[HTML_REMOVED]になります。 HTMLを何か他のものに置き換えるには: markdown.HTML_REMOVED_TEXT = " - HTMLのHTMLは許可されていません - " – molicule