मै मैपिंग में एक आईडी द्वारा परिणामों को देखने के लिए अपने लोचदार खोज कार्यान्वयन को कॉन्फ़िगर किया है और जब मैं उस पहलू को उपयोगकर्ता को प्रदर्शित करता हूं तो मुझे इसका प्रतिनिधित्व करने वाले मानव-पठनीय नाम को दिखाने में सक्षम होना चाहिए। मुझे आवश्यक डेटा मैपिंग में मौजूद है, लेकिन मुझे यकीन नहीं है कि मैं इसे पहलू के हिस्से के रूप में कैसे वापस कर सकता हूं। निश्चित रूप से यह संभव है?लोचदार खोज अतिरिक्त पहलू डेटा
निम्न उदाहरण देखते हुए, मैं पहलू करना चाहते हैं मुझे किसी तरह thingId
thingName
करने के लिए (या किसी अन्य thing
संपत्ति है कि आवश्यकता हो सकती है) सहसंबंधी देने के लिए:
मानचित्रण
{
thingId,
thingName
}
पहलू क्वेरी
{
"facets":{
"things":{ "terms":{ "field":"thingId" } }
}
}
परिणाम
{
"hits":{
"total":3,
"max_score":1.0,
"hits":[
...
]
},
"facets":{
"things":{
"_type":"terms",
"missing":0,
"total":3,
"other":0,
"terms":[
{
"term":"5",
"count":1
},
{
"term":"4",
"count":1
},
{
"term":"2",
"count":1
}
]
}
}
}
संपादित
This answer Solr के बारे में पता चलता है कि मैं दोनों गुण (thingName
और thingId
) और फिर बस दोनों पहलू परिणाम सेट पर पाश पहलू, यह सोचते हैं कि वस्तुओं के आदेश होगा ऐसे ही बनें। मुझे नहीं पता कि यह कितना विश्वसनीय होगा, लेकिन यह एक विकल्प है।
संपादित 2
This answer चलता है कि यह एकल मूल्य में दो क्षेत्रों के संयोजन और उस पर Faceting के बिना मैं क्या चाहते हो पाना संभव नहीं है: thingId|thingName
। आदर्श नहीं।
संपादित 3
This answer एक भी क्षेत्र है और उस पर faceting में एक साथ मूल्यों के संयोजन (ऊपर के रूप में) से पता चलता है, लेकिन यह सूचकांक संयुक्त करने के लिए संयोजन को प्राप्त करने के एक मामले स्क्रिप्ट का उपयोग करता है, इस प्रकार मुझे जरूरत नहीं मूल्यों का रूप। अभी भी सही नहीं है, लेकिन कम से कम क्रैपी विकल्प प्रतीत होता है।
संयोजन 'thingId' और' thingName' एक एकल स्ट्रिंग में और कम से विभाजित आवेदन परत प्रश्न से बाहर नहीं है, लेकिन मैं वास्तव में उम्मीद कर रहा हूं कि एक बेहतर समाधान है। –
मुझे लगता है कि आपको इस बात पर विचार करने की आवश्यकता है कि आपको वास्तव में पहलू पर आईडी का उपयोग करने की आवश्यकता है या नहीं। आप चीज़ नाम का उपयोग क्यों नहीं करते? क्या आपने इसके बारे में सोचा है? –
'चीज़नाम' का उपयोग करना एक विकल्प है, लेकिन यह कम आदर्श है क्योंकि मैं गारंटी नहीं दे सकता कि 'चीज़नाम' अद्वितीय होगा। –