मान लीजिए कि मेरे पास मॉडल User
है जिसमें friends
नामक कई संबंध हैं। तो $user->friends
(या $model->friends
देखें) मुझे User
ऑब्जेक्ट्स की एक सरणी देता है। मैं दोस्तों को ग्रिडव्यू के रूप में प्रदर्शित करना चाहता था। लेकिन CGridView
डेटा dataProvider
ऑब्जेक्ट के रूप में। इसके लिए गुगलिंग मॉडल ऑब्जेक्ट्स की सरणी को नीचे दिए गए अनुसार dataProvider
ऑब्जेक्ट में परिवर्तित करने का तरीका मिला।मॉडल डेटा ऑब्जेक्ट सरणी को डेटा में कनवर्ट करने के लिए कैसे करें
$this->widget('zii.widgets.grid.CGridView', array(
'id' => 'gridUser',
'dataProvider' => new CArrayDataProvider($model->friends, array()),
));
अब इस का उपयोग करते हुए मैं एक त्रुटि
संपत्ति "User.id" परिभाषित नहीं है मिलता है।
अद्यतन
public function relations()
{
return array(
'friends' => array(self::MANY_MANY, 'User', 'friendship(user_id, friend_id)'),
);
}
जोड़ना कि आप कैसे संबंध परिभाषित करते हैं और दो मॉडल कैसे संबंधित हैं (पीके और एफके) उत्तर पाने के लिए महत्वपूर्ण है! –