मैं वर्तमान में beforeValidate()
मॉडल के कॉलबैक में किसी फ़ॉर्म पर कुछ अतिरिक्त सत्यापन पर काम कर रहा हूं।केकेपीएचपी मॉडल-> अमान्य त्रुटि त्रुटि नहीं दिखाता
मैं निम्नलिखित कोड है:
function beforeValidate(){
$i = 0;
foreach($this->data['CapitalCategory'] as $capital_category){
if(!empty($capital_category['value'])){
$this->invalidate('CapitalCategory.'.$i.'.points', 'error!');
return false;
}
$i++;
}
return true;
}
मैं सब कुछ डिबग, और यह झूठी वापसी करता है तो मूल्य मौजूद है। लेकिन फिर, फॉर्म पुनः लोड होता है और अंक इनपुट के नीचे कोई संदेश नहीं दिखाया जाता है! साथ ही, अगर मैं validationErrors
डीबग करता हूं, तो सरणी में वह त्रुटि होती है जिसे प्रदर्शित करने की आवश्यकता होती है। समस्या क्या हो सकती है?
किसी भी मदद की सराहना करें!
संपादित
इस तरह मैं अपने आदानों का निर्माण कर रहा हूँ:
echo $this->Form->input('CapitalCategory.'.$i.'.value', array('label' => $category['Category']['name'], 'type' => 'text'));
echo $this->Form->input('CapitalCategory.'.$i.'.points', array('label' => 'Puncte', 'type' => 'text'));
मेरा मानना है कि एक समस्या तथ्य यह है कि मैं CapitalModel पर काम कर रहा हूँ हो सकता है जो, में से कुछ क्षेत्रों के अलावा CapitalModel, मैंने अपने संबंधित मॉडल, CapitalCategorieModel से कई क्षेत्रों का उपयोग किया है। क्षेत्र में सत्यापन त्रुटि को बाध्य करने के लिए यह समस्या हो सकती है? यदि हां, तो मैं इसे कैसे हल कर सकता हूं?
मैंने अपना प्रश्न संपादित किया है। धन्यवाद। – linkyndy
मैंने पहले अपने क्षेत्र के नामों में संख्याओं का उपयोग नहीं किया है .. लेकिन आप नाम के दूसरे हिस्से को एक स्ट्रिंग बनाने की कोशिश कर सकते हैं, न कि संख्या .. यानी 'राजधानी श्रेणी' के बजाय। $ I। 'अंक' ', 'CapitalCategory.F' डाल दें। $ i। 'अंक' .. .. अपने सभी कोड में प्रतिस्थापित करें और मुझे बताएं कि क्या होता है ... –
मुझे उस नंबर की आवश्यकता है जिसे 'हैनी' रिलेशनशिप रिकॉर्ड सहेजने के लिए केक को बताने के लिए। .. जब राजधानी बचाई जाती है, तो राजधानी श्रेणी मॉडल प्रत्येक राजधानी श्रेणी के लिए एक रिकॉर्ड बचाता है। [संख्या]। फ़ील्ड। – linkyndy