Esempio n. 1
0
 /**
  * {@inheritdoc}
  */
 protected function normalizeDefinition()
 {
     $definition = parent::normalizeDefinition();
     $definition[RecordEntity::PIVOT_COLUMNS] = [];
     foreach ($this->pivotSchema()->getColumns() as $column) {
         //Let's include pivot table columns, it will help many to many loaded to map data correctly
         $definition[RecordEntity::PIVOT_COLUMNS][] = $column->getName();
     }
     //We must include pivot table database into data for easier access
     $definition[ORM::R_DATABASE] = $this->outerRecord()->getDatabase();
     return $definition;
 }
 /**
  * Normalize schema definition into light cachable form.
  *
  * @return array
  */
 protected function normalizeDefinition()
 {
     $definition = parent::normalizeDefinition();
     if ($this->getOuterKey() == $this->outerRecord()->getPrimaryKey()) {
         //Linked using primary key
         $definition[ORM::M_PRIMARY_KEY] = $this->getOuterKey();
     }
     return $definition;
 }
 /**
  * {@inheritdoc}
  */
 protected function normalizeDefinition()
 {
     $definition = parent::normalizeDefinition();
     $definition[static::RELATION_TYPE] = [];
     foreach ($this->outerRecords() as $record) {
         //We must remember how to relate morphed key value to outer record
         $definition[static::RELATION_TYPE][$record->getRole()] = $record->getName();
     }
     return $definition;
 }