Kohana 2 में आप आसानी से इस तरह कि जानकारी मिल सकती है?Kohana 3 मिल वर्तमान नियंत्रक/कार्रवाई/तर्क
अग्रिम धन्यवाद!
Kohana 2 में आप आसानी से इस तरह कि जानकारी मिल सकती है?Kohana 3 मिल वर्तमान नियंत्रक/कार्रवाई/तर्क
अग्रिम धन्यवाद!
एक नियंत्रक के अंदर से:
$this->request->controller
$this->request->action
$this->request->param('paramname')
K3 में K2 तर्क के विपरीत kays जो आप अपने मार्गों में परिभाषित के माध्यम से पहुंचा जा सकता है। उदाहरण के लिए
लें इस यूआरएल:
Route::set('default', '(<controller>(/<action>(/<id>)))')
->defaults(array('controller' => 'welcome', 'action' => 'index'));
"आईडी" तर्क का उपयोग करने के लिए आप फोन था
$this->request->param('id')
आप परम से नियंत्रक/कार्रवाई तर्क उपयोग नहीं कर सकते() तरीका।
नोट, आप ग्लोबल (या "मास्टर") अनुरोध उदाहरण प्राप्त करने के लिए Request::instance()
का भी उपयोग कर सकते हैं।
अधिक जानकारी के लिए देख K3 guide
Kohana> = 3.1 का उपयोग करने वालों के लिए, यह देखा कि अनुरोध वस्तु के कुछ गुणों के तरीकों को बदल दिया गया है उपयोगी हो सकता है।
उदा। Request::controller
अब Request::controller()
(या $this->request->controller()
जब आप नियंत्रक के अंदर हैं)।
अधिक जानकारी के लिए मैं user guide से, http://kohanaframework.org/3.1/guide/kohana/upgrading
अपडेट किया गया जवाब Kohana 3.2 पर गाइड Kohana उन्नत करने के लिए संदर्भ के लिए करना चाहते हैं:
// From within a controller:
$this->request->action();
$this->request->controller();
$this->request->directory();
// Can be used anywhere:
Request::current()->action();
Request::current()->controller();
Request::current()->directory();
भयानक, धन्यवाद – n00b
इसका मतलब यह है कि प्रत्येक "कार्रवाई" के लिए आपको प्रत्येक पैरामीटर के लिए चाबियों का एक सेट परिभाषित करना होगा? यह बहुत अनावश्यक काम की तरह लगता है। मैंने पढ़ा है कि ** कार्रवाई (arg1, arg2, ...) ** जैसे कार्यों में तर्कों को पारित करना ** को 3.1 में बहिष्कृत किया गया है और 3.2 – techexpert
@techexpert में समाप्त हो जाएगा प्रत्येक तर्क जिसे आप यूरी जरूरतों के माध्यम से पारित करना चाहते हैं मार्ग में परिभाषित किया जाना है। यदि आप बहुत सारे पैरामीटर का उपयोग कर रहे हैं तो शायद आपको क्वेरी स्ट्रिंग का उपयोग करना चाहिए। – Matt