| 요약 | Discourse Authentication Validations 플러그인은 User Field에 사용자 정의 검증을 추가하여 Signup Modal에서 User Field의 표시를 전환할 수 있는 기능을 제공합니다. | |
| 저장소 링크 | https://github.com/discourse/discourse-authentication-validations | |
| 설치 가이드 | Discourse에 플러그인 설치하는 방법 |
소개
Discourse Authentication Validations 플러그인은 User Field에 사용자 정의 검증을 추가할 수 있는 기능을 제공합니다.
커스텀 User Field는 필수 필드에서 빈 값을 감지하는 것 외에는 코어에서提供任何 validation(검증) 기능을 제공하지 않습니다. 이 플러그인은 각 User Field별로 정규식(regex)을 정의할 수 있으며, 입력된 값이 해당 정규식에 맞는지 확인합니다.
또한 이 플러그인은 Signup Modal에서 User Field의 표시를 전환할 수 있는 기능을 추가합니다. 이를 통해 User Field를 *“체인”*하여, 이전 User Field에 특정 값이 있을 때만 다음 User Field가 표시되도록 할 수 있습니다.
기본 설정
1. 플러그인 활성화
Discourse Authentication Validations 플러그인은 admin/plugins 페이지에서 접근할 수 있는 토글 또는 설정에서 활성화할 수 있습니다.
2. User Field에 사용자 정의 검증 추가
Discourse Authentication Validations 플러그인이 활성화되면 User Field 양식의 하단에 사용자 정의 검증 포함 체크박스가 표시됩니다.
체크하면 추가적인 세 가지 필드가 표시됩니다:
- 값 검증 정규식 (Value Validation Regex)
- 표시 값 (Show Values)
- 대상 User Field (Target User Fields)
사용자 정의 검증 추가
값 검증 정규식 필드에 유효한 정규식을 입력하세요:
이제 가입 양식에서 해당 User Field의 값은 입력한 정규식에 대해 테스트됩니다. 입력 값이 사용자 정의 정규식의 기준을 충족하지 않는 경우, 가입 양식은 제출되지 않습니다.
값 없음 (기본 양식 검증에 의존)
잘못된 값
올바른 값
User Field 체이닝
먼저, User Field에 표시 값을 포함하세요.
User Field에 표시 값이 포함되면, 연결된 입력 값이 어떤 표시 값과 일치할 때까지 해당 입력 값을監視합니다. 일치하면 포함된 대상 User Field의 가시성을 전환하여 표시합니다.
다음으로, 대상 User Field 값을 추가하세요.
대상 User Field 드롭다운에서는 사용 가능한 모든 User Field 목록을 볼 수 있습니다. 선택한 User Field의 가시성은 표시 값의 해당하는 값에 의해 전환됩니다.
고급 체이닝
여러 User Field에 사용자 정의 검증을 추가하여 User Field를 체이닝할 수 있습니다.
예를 들어, 다음과 같은 값이 있는 세 개의 User Field가 있다고 가정해 보겠습니다:
| 이름 | 사용자 정의 검증 있음 | 표시 값 | 대상 User Field |
|---|---|---|---|
| Input One | true | show-field-two | Input Two |
| Input Two | true | show-field-three | Input Three |
| Input Three | false |
Input Two와 Three는 *“자식”*인 Input One의 하위 요소이므로 기본적으로 숨겨집니다. Input One에 show-field-two라는 표시 값이 추가되면 Input Two가 표시되지만, Input Three는 여전히 숨겨진 상태입니다. Input Two에 show-field-three 값이 들어갈 때까지 숨겨진 상태를 유지합니다.
표시 값과 대상 클래스의 올바른 조합을 통해 User Field를 무한정 중첩할 수 있습니다.













