NSPredicate를 사용하여 Request 필터링하기
NSFetchRequest를 이용하면 Request에서 원하는 데이터만 가져올 수 있다. 만약 검색창을 만든다고 하면 아래처럼 할 수 있습니다.
// Entity명 Item
// property명 title
// 예시 검색어 : 서울
// 서치바에 검색어 "서울"입력을 가정합니다.
let searchBar = UISearchBar()
searchBar.text = "서울"
func searchTitle() {
// Item 데이터 요청 생성.
let request: NSFetchRequest<TodoModel> = TodoModel.fetchRequest()
// NSPredicate 초기화하여 Item의 title 검색어가 포함되는 데이터만 리턴됩니다.
request.predicate = NSPredicate(format: "title CONTAINS[cd] %@", self.searchBar.text)
// --> 예시 검색어인 "서울"을 포함하는 Item 데이터가 출력된다.
}
히스토리
- 2022.08.08 : 더 알아보기 쉽도록 내용 수정
반응형
'개발 > Swift' 카테고리의 다른 글
[Swift/Realm] List-LinkingObject 로 관계 설정한 데이터 Read, Create, Update 하기. (0) | 2022.06.26 |
---|---|
[Swift] CoreData Request에 이중필터 적용하기 (NSCompoundPredicate) (0) | 2022.06.24 |
[Swift/Realm] Object 만들고 가져오기 (0) | 2022.06.24 |
[Swift] Coredata 데이터 다루기(저장, 삭제, 불러오기) (0) | 2022.06.24 |
[Framework] AVFoundation의 간단한 설명 (0) | 2022.05.24 |