2013-08-29 16 views
5

में एक आरामदायक नियंत्रक के तर्कों में गुजरने के बाद मैंने लारवेल 4 में आराम से नियंत्रकों को प्रत्यारोपित करना शुरू कर दिया है। मुझे समझ में नहीं आता है कि रूटिंग के इस तरीके का उपयोग करते समय मेरे नियंत्रकों में कार्यों को पैरामीटर कैसे पास किया जाए।लार्वेल

नियंत्रक:

class McController extends BaseController 
{ 
      private $userColumns = array("stuff here"); 

    public function getIndex() 
    { 
      $apps = Apps::getAllApps()->get(); 
      $apps=$apps->toArray(); 
      return View::make('mc')->nest('table', 'mc_child.table',array('apps'=>$apps, 'columns'=>$this->userColumns)); 
    } 

    public function getTable($table) 
    { 
      $data = $table::getAll()->get(); 
      $data=$data->toArray(); 
      return View::make('mc')->nest('table', 'mc_child.table',array('apps'=>$apps, 'columns'=>$this->userColumns)); 
    } 

} 

मार्ग:

Route::controller('mc', 'McController'); 

मैं तो मेरे मार्ग काम कर रहा है दोनों URL तक पहुँचने में सक्षम हूँ। रूटिंग और नियंत्रकों की इस विधि का उपयोग करते समय मैं इस नियंत्रक को तर्क कैसे पास करूं?

उत्तर

4

जब आप लार्वेल में एक आरामदायक नियंत्रक को परिभाषित करते हैं, तो आप यूआरआई को थ्रोग क्रियाओं तक पहुंच सकते हैं, उदा। Route::controller('mc', 'McController') के साथ mc/{any?}/{any?} आदि के साथ मिलान होगा। आपके फ़ंक्शन getTable के लिए, आप mc/table/mytable मार्ग से पहुंच सकते हैं जहां mytable फ़ंक्शन के लिए पैरामीटर है। जब मैं मार्ग mc/table/hi करने के लिए जाना मैं आउटपुट प्राप्त

class McController extends BaseController 
{ 
    // RESTFUL 
    protected static $restful = true; 

    public function getIndex() 
    { 
     echo "Im the index"; 
    } 

    public function getTable($table) 
    { 
     echo "Im the action getTable with the parameter ".$table; 
    } 
} 
कि उदाहरण के साथ

,: Im the action getTable with the parameter hi

संपादित आप इस प्रकार शोकहारा सुविधा को सक्षम करना होगा।

+0

मैं एमसी/टेबल के साथ मार्ग तक पहुंच सकता हूं। प्राप्त करने के लिए लार्वेल को कार्रवाई के लिए इसे कॉल करने की सुविधा मिलती है, इसलिए इसे आराम से बनाते हैं। जब मैं यूआरएल पूर्व में एक और स्ट्रिंग पास करता हूं। एमसी/टेबल/mytable यह नियंत्रक में एक समारोह के रूप में 'mytable' के लिए लग रहा है। यही वह मुद्दा है जो मैं कर रहा हूं। मैं जानना चाहता हूं कि रूटिंग के इस तरीके से नियंत्रक को तर्क पारित करना संभव है या नहीं। – arrowill12

+0

मैंने जवाब संपादित किया, मुझे उम्मीद है कि आप इसे प्राप्त कर सकते हैं। – Darwing

+0

ऐसा लगता है कि आप लार्वेल 3 का उपयोग कर रहे हैं। लार्वेल 4 के लिए कुछ अंतर हो सकता है। – arrowill12