文字列からすべての小枝タグを削除する Symfony 互換の方法はありますか?
P粉043470158
P粉043470158 2024-03-22 00:03:19
0
2
399

文字数を数えて文字長制限に対して検証する前に、正規表現を含むすべての Twig タグを削除する Symfony 検証制約があります。 (私のフォームでは、ユーザーは Twig タグの限られたサブセットをフィールドに入力できます。) したがって、次のことを行います:

リーリー

...$parsedLength 値が長すぎる場合、ビルド違反が発生します。

これは機能しますが、私にとっては機能しません。ある種のサービスを検証クラスに渡し、そのサービスを使用して Twig タグなしでテキストをレンダリングする方法はありますか?これは、正規表現を使用するよりも調和のとれた方法のようです。

P粉043470158
P粉043470158

全員に返信(2)
P粉038161873

コードを共有してもらえますか?私が理解しているところによると、制約内に検証ロジックを適用していますが、これはバリデーター内に含める必要があります。

望ましい結果を達成するための正しい手順は次のとおりです:

  1. 検証ロジックを含まないカスタム制約を作成する
  2. この制約のカスタム バリデータを作成し、サービスとして構成します。バリデーターはサービスをコンストラクターパラメーターとして受け入れる必要があります。

一例:

リーリー
  1. 挿入されたサービスを使用してバリデーター ロジックを完成させます。

公式ドキュメント: https://symfony.com/doc/current/validation/custom_constraint.html

いいねを押す +0
P粉854119263

これがあなたが求めているものであるかどうかは 100% わかりませんが、入力に基づいてテンプレートを作成し、それをレンダリングすることはできます。もちろんすべてのブランチを削除しますが、変数が何であるかを常に知っているかどうかはわかりません。

確認したところ、すべての例が非常に古いようで、まだ動作するかどうかはわかりません。ドキュメントには例さえ見つかりませんが、どこかにあるはずです。ともかく:### リーリー

少なくとも、これにより実際のテンプレートを検証することもできます。しかし、すでに述べたように、

解析された長さが何を意味するのかよくわかりません。とにかく、createTemplate は (私にとって) 興味深いメソッドです。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート