現在、このスニペットに取り組んでいます
@register_snippet
class Foo(models.Model):
body = RichTextField()
__str__
どういうわけか、複数のスニペットを区別できるように定義する必要があると判断しました。文字列表現としてコンテンツを使用body
することは良い考えだと思います。ただし、本体は非常に大きくなる可能性があるため、最初の 20 文字で十分です。
このタスクは簡単だと思って、次のコードを書きました。
@register_snippet
class Foo(models.Model):
body = RichTextField()
def __str__(self):
return self.body[:20]
<p>Quequeueueueue?</
...やなどの見苦しい表現になってしまいました<p>FOO<br/></p>
。
データベースを調べたところ、マークアップがデータベースに保存されていることがわかりました。とはいえ、私はまだ疑問に思っています。
CPU を大量に消費する HTML パーサーを使用せずに HTML マークアップを削除し、全体を解析する方法は何body
ですか?
正規表現で一部の</a
タグを削除できると思いますが、</blockqu
、<
、 のような状況をどのように処理すればよい</
でしょうか?