2012-06-11 10 views
6

बिना उत्पादन रेंडर करने के लिए मुझे पता है कि मैं इसZF2: Zend फ्रेमवर्क 2 - कैसे लेआउट

public function providerAction() 
{ 
    $result = new ViewModel(); 
    $result->setTerminal(true); 

    return $result; 
} 

उपयोग कर सकते हैं लेकिन यह कैसे मैं चर देखने पर पारित करते हैं? इससे पहले कि मैं इस

return array('items' => $items); 

किया लेकिन अब मैं केवल एक ही विकल्प या तो वापसी सरणी और उसके बाद है लेआउट है या लौटने $result तो चर ध्यान में रखते हुए नहीं हैं।

+0

एक अधिक विस्तृत जवाब के साथ एक और इसी तरह के सवाल। देखें http://stackoverflow.com/a/9870758/951920 –

उत्तर

23

अपने उदाहरण में आप इस प्रकार लिख सकते:

public function providerAction() 
{ 
    $result = new ViewModel(); 
    $result->setTerminal(true); 
    $result->setVariables(array('items' => 'items')); 
    return $result; 
} 
+0

वीई !!)))))) –

+1

यह एक उत्कृष्ट जवाब है, अगर आप इसे स्वीकार करेंगे तो अच्छा होगा :) –

2

पिछले जवाब पूरी तरह से काम करता है। मैं बस को जोड़ने के लिए है कि बजाय setVariables का उपयोग कर के आप भी सीधे अपने चर पारित कर सकते हैं जब ViewModel इस तरह instantiating हैं:

$result = new ViewModel(array('items' => $items)); 
संबंधित मुद्दे