मेरे पास ऑर्डर फ़ील्ड order
के अनुसार आदेशित वस्तुओं की एक सूची है। मैं केकपीएचपी 1.2 में एक गैलरी बना रहा हूं जिसमें एक पिछला और अगला बटन है और उन्हें अपने ऑर्डरिंग के अनुसार पिछले और अगले आइटम से लिंक करना चाहिए, न कि उनके id
के अनुसार।केकपीएचपी: पड़ोसियों को ढूंढें, 'नाम' या 'ऑर्डर' पर आदेश
इस परिणाम को प्राप्त करने के लिए मैंने खोज फ़ंक्शन में 'ऑर्डर' पैरामीटर शामिल किया है, और इसे 'Item.order'=>'DESC'
के साथ पॉप्युलेट किया है। फिर भी परिणाम id
आदेशित सूची है।
मेरा सवाल है: मैं क्या गलत करता हूं? मेरे नियंत्रक:
$this->Item->id = 16;
$neighbours = $this->Item->find('neighbors', array('order'=>array('Item.order'=>'DESC'), 'fields'=>array('id','name')));
समाधान मैं एक अलग दृष्टिकोण की कोशिश की है। मेरे कोड अब काम करता है और लग रहा है इस प्रकार है:
$order = $this->Item->findById(6);
$neighbours = $this->Item->find('neighbors', array('field'=>'order', 'value'=>$order['Item']['order']));
क्षेत्र के लिए पैरामीटर 'field'
की स्थापना करके आदेश क्षेत्र हो जाएगा, और करने के लिए 'value'
पैरामीटर सेट आपके वर्तमान आइटम का ऑर्डर वैल्यू आपको prev
और next
मिलेगा।
आप एक lifesaver हैं! – Bagata