>  Q&A  >  본문

문자열에서 모든 나뭇가지 태그를 제거하는 Symfony 호환 방법이 있습니까?

문자 수를 계산하고 문자 길이 제한에 대해 유효성을 검사하기 전에 정규식을 사용하여 모든 Twig 태그를 제거하는 Symfony 유효성 검사 제약 조건이 있습니다. (내 양식을 사용하면 사람들이 Twig 태그의 제한된 하위 집합을 필드에 입력할 수 있습니다.) 따라서 다음을 수행합니다.

으아아아

...$parsedLength 값이 너무 길면 빌드 위반입니다.

이것은 작동하지만 나에게는 작동하지 않습니다. 내 유효성 검사 클래스에 일종의 서비스를 전달한 다음 해당 서비스를 사용하여 Twig 태그 없이 텍스트를 렌더링하는 방법이 있습니까? 이는 정규식을 사용하는 것보다 작업을 수행하는 데 더 조화로운 방법인 것 같습니다.

P粉043470158P粉043470158185일 전310

모든 응답(2)나는 대답할 것이다

  • P粉038161873

    P粉0381618732024-03-22 18:07:32

    코드를 공유할 수 있나요? 내가 이해한 바에 따르면 제약 조건 내부에 유효성 검사 논리를 적용하고 있지만 이는 유효성 검사기 내부로 들어가야 합니다.

    원하는 결과를 얻기 위한 올바른 단계는 다음과 같습니다.

    1. 검증 논리 없이 사용자 지정 제약 조건 만들기
    2. 이 제약 조건에 대한 사용자 지정 유효성 검사기를 만들고 서비스로 구성하세요. 유효성 검사기는 서비스를 생성자 매개변수로 받아들여야 합니다.

    예:

    으아악
    1. 주입된 서비스를 사용하여 유효성 검사기 논리를 완성하세요.

    공식 문서: https://symfony.com/doc/current/validation/custom_constraint.html

    회신하다
    0
  • P粉854119263

    P粉8541192632024-03-22 16:44:46

    귀하가 요청하신 내용인지 100% 확신할 수는 없지만 입력 내용을 기반으로 템플릿을 만든 다음 렌더링할 수 있습니다. 물론 변수가 무엇인지 항상 알 수는 없지만 모든 분기를 제거하십시오.

    확인해 보니 모든 예제가 매우 오래된 것 같고 여전히 작동하는지 잘 모르겠습니다. 어딘가에 있을 것이라고 확신하지만 문서에서 예제를 찾을 수도 없습니다. 아무튼:

    으아악

    이를 통해 실제 템플릿을 확인할 수도 있습니다. 하지만 이미 언급했듯이 parsed length가 무엇을 의미하는지 잘 모르겠습니다. 어쨌든 createTemplate은 (나에게) 흥미로운 방법이다.

    회신하다
    0
  • 취소회신하다