एक घटक एक मॉडल के समान नहीं है। इसलिए यदि आप चीजों को इस तरह से करना चाहते हैं, तो आपको अपनी Action
को चालू करना होगा एक घटक में मॉडल।
घटक Controller/Component/ActionComponent.php
में जाएगा , और फिर इसे आपके नियंत्रकों में इस तरह शामिल किया जा सकता है:
public $components = array(..., 'Action');
आपके घटक में तर्क एक मॉडल के समान हो सकता है, लेकिन कुछ अंतर हैं। उदाहरण के लिए, आपके पास अभी भी एक एक्शन मॉडल हो सकता है, और घटक सीआरयूडी और अन्य सामान के लिए इसका उपयोग कर सकता है। आपको ClassRegistry::init()
. का उपयोग करना होगा हालांकि अपने घटक में एक मॉडल लोड करने के लिए।
मैं वास्तव में यह नहीं समझा सकता कि आप जो चाहते हैं उसे ठीक से कैसे करें, इसका एक कारण यह है कि मुझे ठीक से पता नहीं है कि आप क्या चाहते हैं। हालांकि, मैंने पहले अपना खुद का घटक लिखा है और आप इसका उपयोग कर सकते हैं यदि आप चाहें तो संदर्भ - यह संभवतः आपकी तुलना में अधिक जटिल है ताकि आप देख सकें कि इसके लिए तरीके कैसे लिखें।
उस उदाहरण में, एक बार इसे नियंत्रक में शामिल करने के बाद, मैं बस $this->CustomAcl->check()
को कॉल कर सकता हूं मुझे कहीं भी पसंद है।
मुझे आशा है कि यह आपको कम से कम आरंभ करने के लिए पर्याप्त है।