2016-06-09 2 views
0

Kinvey 기반 응용 프로그램에서 적절한 검색 기능을 구축하는 방법을 알 수 없습니다. 지금은 그냥 내가 입력 한 텍스트와 일치하는 값을 찾을 수 있으며이 방법은 다음과 같습니다Kinvey 검색 기능

KCSQuery* query = [KCSQuery queryOnField:@"key" withExactMatchForValue:textField.text]; 

[self.store queryWithQuery:query withCompletionBlock:^(NSArray *objectsOrNil, NSError *errorOrNil) { 

    if (errorOrNil == nil) { 

     [results removeAllObjects]; 
     [results addObjectsFromArray:objectsOrNil]; 

     [self.tableView reloadData]; 
    } 

} withProgressBlock:nil]; 

잘하면 우리는이에 대한 해결책을 찾을 수 있습니다. 미리 감사드립니다.

답변

1

"정확히 일치하는 키"대신 "키"가 포함 된 결과를 가져 오는 것을 의미합니까?

KCSQuery()와

, 아래처럼 정규 표현식을 사용하여 얻을 수 있습니다 또한

let query = KCSQuery(onField: “fieldname”” usingConditional: .KCSRegex, forValue: “Regular expression”) 

, 연산자를 사용하여 쿼리 작성의 더 나은 이해를 위해 http://devcenter.kinvey.com/ios/guides/datastore#Querying를 참조 등의 수정은

이없는 경우 케이스, 예제와 함께 유스 케이스를 자세히 설명해 주시겠습니까?

감사합니다,

+0

내가 키가 문자열을 포함하는 결과를 가져 오기 위해 의미 PRANAV Kinvey 지원. 예를 들어 사용자 이름이 "John"인 경우 검색 문자열이 "조"가 아니라 "조"인 경우에도 사용자 "존"이 결과에 나타나야합니다. – Hugo

+0

정규 표현식을 사용하여 KCSQuery를 만들면 위에서 언급 한 것과 같은 결과를 얻을 수 있습니다. KCSQuery * 쿼리 = [KCSQuery queryOnField : "필드 명"withRegex @ : @ "^ 일반 EXPR"] 여기 는 관련의 Obj-C 코드, 귀하의 예를 참조하면, 그것과 같을 것이다 : KCSQuery * 쿼리 = [KCSQuery queryOnField : @ "username"withRegex : @ "^ Jo"]; 결과에 "Joe", "John"이 표시됩니다. 잘하면이 도움이됩니다. –