0

最初のページで web2py DIV() タグを作成し、表示して、その値をデータベースに保存する必要があります。2 ページ目では、このデータベースの値を取得し、これを TABLE() 関数内に追加する必要があります。

エラーをスローしていません。しかし、2 番目のページ ビューでは、分割コンテンツが HTML ではなく XML として表示されます。

したがって、HTMLテーブル内で値を取得しています<div style="float:right">content</div>

DIV() はデータベースに xml() として保存されていると思います。この xml() を DIV() に戻すにはどうすればよいですか。

4

2 に答える 2

2

データベースには元の HTML が保存されています。ただし、web2py ビューに書き込まれたテキストは自動的にエスケープされるため、HTML コードは HTML としてレンダリングされるのではなく、文字どおりに表示されます。それを避けるには、ご指摘のとおり、XML()ヘルパーで HTML をラップするだけです。

ただし、注意してください。ユーザーが入力した入力に対してこれを行うべきではありません。悪意のあるユーザーが Javascript コードを入力すると、そのコンテンツを表示している他のユーザーにセキュリティの脆弱性が生じる可能性があります (これが、最初に web2py が自動的にすべてをエスケープする理由です)。より安全にするために、次のこともできますXML(..., sanitize=True)

于 2012-08-07T21:00:31.943 に答える
0

解決策を見つけました。XML() を使用する必要があります。例: XML(データベース フィールド)

于 2012-08-07T11:51:00.777 に答える