• 회원가입
  • 로그인
  • 구글아이디로 로그인

[filters] Jinja - unique() 필터 - 고유 아이템으로 구성된 반복자 반환 (= unique필터 = 유니크필터) ※ 고유 요소 항목 추출

목차
  1. unique() 예제 - 중복 아이템 제거한 반복자 반환
  2. unique() 정의
  3. unique() 구문

 

unique() 예제 - 중복 아이템 제거한 반복자 반환

[예제1] - 대소문자 구분 X 경우

 

{{ ['foo', 'bar', 'foobar', 'FooBar']|unique|list }}

 

결과값: ['foo', 'bar', 'foobar']


[예제2] - 대소문자 구분 O 경우

 

{% set ex = ['foo', 'bar', 'foobar', 'FooBar'] %}

{{ ex|unique(true)|list }}


결과값: ['foo', 'bar', 'foobar', 'FooBar']


[예제3] - 특정 속성값으로 고유 아이템 선별

 

{% set users = [

    {'name': '지원', 'is_active': True, 'email': ''},

    {'name': '민수', 'is_active': False, 'email': ''},

    {'name': '영희', 'is_active': True, 'email': ''},

    {'name': '철수', 'is_active': True, 'email': ''}

] %}


{{ users|unique(true, 'is_active')|list }}

 

결과값: [{'name': '지원', 'is_active': True, 'email': ''}, {'name': '민수', 'is_active': False, 'email': ''}] 

 

unique() 정의

 

지정 반복자에서 고유 아이템으로 구성된 반복자 반환하는 필터.

 


 

1.

고유 아이템 배치 순서는 필터 적용 전 순서와 동일.

 

2. 공식 매뉴얼

https://jinja.palletsprojects.com/en/3.1.x/templates/#jinja-filters.unique

 

 

unique() 구문

 

jinja-filters.unique(value: 't.Iterable[V]', case_sensitive: bool = False, attribute: str | int | NoneType = None) → 't.Iterator[V]'

 


[매개변수]

 

value: 't.Iterable[V]'

필수. 고유 아이템 리스트 뽑은 반복자.

 

case_sensitive: bool = False

선택. 대소문자 구분 여부.

 

attribute: str | int | NoneType = None

선택. 지정 속성에 대한 고유값으로 필터링.

 


[반환값]

 

중복 아이템 제거된 반복자 반환.

 



분류 제목
intro Jinja - 소개 - 설치
api Jinja - API - 기초
api Jinja - API - 고급 API
api Jinja - API - 자동 이스케이프
api Jinja - API - 식별자에 관한 참고 사항
api Jinja - API - 정의되지 않은 유형
api Jinja - API - 문맥
api Jinja - API - 로더
api Jinja - API - 바이트코드 캐시
api Jinja - API - 비동기 지원
api Jinja - API - 정책
api Jinja - API - 유용
api Jinja - API - 예외
api Jinja - API - 맞춤 필터
api Jinja - API - 맞춤형 테스트
api Jinja - API - 평가 컨텍스트
api Jinja - API - 글로벌 네임스페이스
api Jinja - API - 저수준 API
api Jinja - API - 메타 API
1/9
목록
찾아주셔서 감사합니다. Since 2012