2011-11-14 20 views
28

ठीक है मेरे पास एक मूल आईपैड ऐप है जो उपयोगकर्ता से 5 खोज/फ़िल्टर मानदंड मांगता है। इस डेटा के आधार पर, मुझे अपने मूल डेटा डीबी पर जाना होगा, और उस मानदंड को फिट करने वाली किसी भी प्रबंधित ऑब्जेक्ट को खींचना होगा। ऐसा लगता है कि मुझे एक ही अनुरोध के लिए एक से अधिक भविष्यवाणियों को लागू करने की आवश्यकता है, क्या यह संभव है? या क्या मैं सिर्फ एक बहुत लंबी फैंसी भविष्यवाणी लिख सकता हूं? कई आवश्यकताओं के साथ? मुझे उससे कैसे संपर्क करना चाहिए?क्या मैं NSFetchRequest को एकाधिक भविष्यवाणियां लागू कर सकता हूं? क्या मेरे परिणामों को मैन्युअल रूप से पार्स करना बेहतर होगा?

क्या यह एक अच्छा विचार है कि सभी इकाइयों को पकड़ने के अनुरोध के माध्यम से पकड़ लें, और फिर प्रत्येक सरणी के माध्यम से लूप करें और मुझे लगता है कि मेरे खोज मानदंडों को फिट करने वाले किसी ऑब्जेक्ट को पकड़ लें?

कृपया सलाह दें!

उत्तर

80

हां यह संभव है। आप यौगिक विधेय के लिए देख रहे हैं और यहाँ के साथ एक उदाहरण है और predicates:

NSPredicate *compoundPredicate 
    = [NSCompoundPredicate andPredicateWithSubpredicates:[NSArray of Predicates]]; 

आप भी अपनी जरूरतों के आधार पर notPredicateWithSubpredicates और orPredicateWithSubpredicates उपयोग कर सकते हैं।

प्रलेखन के लिए लिंक https://developer.apple.com/documentation/foundation/nscompoundpredicate

+2

Thanx आदमी, मैं एक NSString रचना और यह प्रारूप के रूप में विधेय को पास करके यह कर की कोशिश की। यह अच्छी तरह से काम किया लेकिन तारीखों के लिए नहीं !! मैंने काम का दिन बर्बाद कर दिया। फिल्टर बनाने का यह तरीका है: डी – MQoder