示例#1
0
 /**
  * Adds the parents for this model
  * ParentMap are specieid in the parent_ids attribute
  * Parent object belong to the same table
  */
 public function addParentMap()
 {
     $parents = [];
     $ids = array_filter(is_array($this->parent_ids) ? $this->parent_ids : explode(',', $this->parent_ids));
     $parentModels = static::find()->where(['id' => $ids])->asArray()->indexBy('id')->all();
     foreach ((array) $parentModels as $parent) {
         if (is_array($parent)) {
             $parents[] = ['remote_type' => $this->slug, 'parent_id' => $parent['id'], 'parent_type' => $parent['slug'], 'parent_class' => static::className(), 'parent_table' => $this->tableName()];
         }
     }
     return parent::addParentMap($parents);
 }