से केवल कुछ ही कॉलम नियंत्रक में मेरे पास है:Yii2 का चयन संबंधित मॉडल
public function actionGetItems()
{
$model = new \app\models\WarehouseItems;
$items = $model->find()->with(['user'])->asArray()->all();
return $items;
}
WarehouseItem मॉडल में मैं मानक (जीआईआई द्वारा बनाई गई) संबंध घोषणा की है:
public function getUser()
{
return $this->hasOne('\dektrium\user\models\User', ['user_id' => 'user_id']);
}
कैसे मैं नियंत्रित कर सकते हैं जो स्तंभ डेटा "उपयोगकर्ता" संबंध से मिलता है? मुझे वर्तमान में सभी कॉलम मिलते हैं जो कि अच्छा नहीं है क्योंकि डेटा जेएसओएन प्रारूप में कोणीय को भेजा जा रहा है। अभी मुझे मुश्किल $ आइटम लूप करना है और उन सभी कॉलम को फ़िल्टर करना है जिन्हें मैं भेजना नहीं चाहता हूं।
मैं इस त्रुटि मिलती है: PHP सूचना - Yii \ आधार \ ErrorException अपरिभाषित सूचकांक: user_id यह क्या हो सकता है? – Ljudotina
ओह, ठीक है, मुझे मिल गया .... मुझे संबंधित तालिका से "user_id" कॉलम भी चुनना है। – Ljudotina
क्रम में यह काम करता है आपको संबंधित वर्ग के लिंकिंग क्षेत्र का भी चयन करना होगा। इस मामले में यह 'उपयोगकर्ता' मॉडल का' user_id' होगा: '$ query-> चुनें ('user_id, col1, col2');'। –