ホームページ  >  に質問  >  本文

Rails: データベース列の切り詰め時にリンク テキストを保持しながら HTML タグ テキストを切り詰める

HTML タグを含むコメントを保存する comment というデータベース列があります。

大きなテキストを短縮してポップアップ ウィンドウに完全に表示するには、truncate(comment, length: 50,エスケープ: false) 関数を使用しました。

2 つの例を考えてみましょう:

例 1: comment 列には、HTML タグを含む次のプレーン テキストが含まれています。 escape: false を使用すると、HTML タグが切り詰められず、太字:

などの書式設定を含むテキストが正しく表示されます。 リーリー

例 2: この場合、href タグを使用してリンクを作成していますが、escape の動作が期待どおりに機能しません。 HTML タグとして認識されませんが、プレーン テキストとして扱われます:

リーリー

切り捨て後の表示は次のようになります:

リーリー

ただし、望ましい結果は、 タグ内のテキストのみを切り詰め、リンク テキスト「ClickToOpenFile」をそのまま残すことです。

#rawhtml_safe を使用してみましたが、残念ながら期待どおりの結果が得られません。

P粉896751037P粉896751037402日前490

全員に返信(1)返信します

  • P粉665427988

    P粉6654279882023-09-13 16:54:17

    github.com/hgmnz/truncate_html gem を使用します:

    リーリー

    返事
    0
  • キャンセル返事