하나의 컬렉션에서 30,000 개의 데이터베이스 레코드를 색인화하려고합니다. 하나의 사용자 정의 필드에 항목 목록을 포함 할 수 있어야합니다. 내 수색에서. 애플리케이션 ID 목록을 포함하는 (CF10 도입) 동적 정의 필드 applications_s되어,이 예에서CFSearch solr 사용자 정의 필드의 목록 사용
<cfindex collection = "myCollection"
action = "refresh"
type = "custom"
query = "Local.myQuery"
key = "ID"
title="Title"
applications_s="A_Comma_Separated_List"
body = "a_field,a_nother_field">
:
여기에 내 인덱스의 일례이다. 이 필드의 내용 예제는 다음과 같습니다
T1,T2,B4,G1
이 모든 인덱스 화려하게, 그러나 나는 기준으로 응용 프로그램 목록에서 단일 항목을 사용하여 검색하는 방법을 알아낼 수 없었습니다.
<cfsearch name="Local.qSearch"
collection="myCollection"
criteria="test AND applications_s:T1">
이 몸의 단어 '테스트'가 포함 된 모든 레코드를 반환하고, 또한 응용 프로그램 필드에 'T1'을 포함해야한다 :
그래서, 나는이 작업을 수행 할 수 있도록하고 싶습니다 . 그러나 사용자 지정 필드의 내용을 쉼표로 구분 된 목록으로 처리하는 조건 구문을 찾을 수 없습니다 ... 문자열로만 작동하는 것으로 보입니다. 따라서 와일드 카드를 포함하지 않으면 내 예제 레코드가 반환되지 않습니다. 이로 인해 실수로 반환되는 여분의 레코드에 문제가 발생할 수 있습니다.
내 사용자 정의 필드가 목록임을 명시하는 방법이 있습니까? 에 내 지정된 값이 있어야합니까?
필자가 묻는 방식으로'cfindex'를 사용하지 않았다는 말로 내 의견을 시작하겠습니다. [docs here] (http://help.adobe.com/ko_KR/ColdFusion/10.0/CFMLRef/WSc3ff6d0ea77859461172e0811cbec22c24-7d04.html) 몇 가지 질문/의견이 있습니다. 먼저, 커스텀 애트리뷰트에 원하는 이름을 붙이거나 'custom1','custom2','custom3','custom4'가 필요합니까? 두 번째로, 문서는 사용자 정의 속성이 예제와 같이'type = custom'을 지정할 때 쿼리 열 이름을 지정해야한다고 말합니다. 응용 프로그램 ID가 데이터베이스의 열에 포함되어 있습니까? –
Hi Miguel, CF10에서 동적으로 사용자 정의 필드를 추가하고 원하는 이름을 지정할 수 있습니다. 'custom1, custom2'등을 사용하는 것과 동일합니다. 차이가 있다면 customX를 사용하면 기꺼이 사용합니다. 둘째, 응용 프로그램 ID가 데이터베이스 열로 돌아옵니다. cfindex 예제는 정확히 예상대로 작동합니다. 목록으로 취급되는 사용자 정의 열과 일치시킬 수있는 구문을 찾고 싶습니다. –
나는 이것을 간단하게 할 수 없다고 생각하기 시작했습니다. * 사용자 정의 필드를 검색하는 * 정보가 없습니다. 와일드 카드를 사용하여 정확하게 일치하는 항목이나 일치 항목을 찾을 수는 있지만 처음에는 와일드 카드를 사용할 수 없기 때문에 이것은 나에게 거의 쓸모가 없습니다. 이것은 정말로 * 명백한 일처럼하고 싶다. 나는 뭔가를 놓치고 있는가, 아니면 심각하게 지원하지 않는가? ?? –