protected function assignIndexes($indexes)
    {
        foreach ($indexes as $index) {
            if (!$index instanceof IndexInterface) {
                throw new ModelException(sprintf('Index must be an instance of IndexInterface, got "%s"', $this->getType($index)));
            }

            foreach ($index->fields() as $key => $field) {
                $field = $index->type() == 'foreign' ? $key : $field;

                $this->assertField($field);
            }

            if ($index->type() !== 'foreign') {
                $index->table($this->table);
            }

            $this->indexes[$index->name()] = $index;
        }
    }
protected function assignIndexes($indexes)
    {
        foreach ($indexes as $index) {
            if (!$index instanceof IndexInterface) {
                throw new ModelException(sprintf('Index must be an instance of IndexInterface, got "%s"', $this->getType($index)));
            }

            foreach ($index->fields() as $key => $field) {
                $field = $index->type() == 'foreign' ? $key : $field;

                $this->assertField($field);
            }

            if ($index->type() !== 'foreign') {
                $index->table($this->table);
            }

            $this->indexes[$index->name()] = $index;
        }
    }
protected function assignIndexes ( $ indexes ) { foreach ( $ indexes as $ index ) { if ( ! $ index instanceof IndexInterface ) { throw new ModelException ( sprintf ( 'Index must be an instance of IndexInterface, got "%s"' , $ this -> getType ( $ index ) ) ) ; } foreach ( $ index -> fields ( ) as $ key => $ field ) { $ field = $ index -> type ( ) == 'foreign' ? $ key : $ field ; $ this -> assertField ( $ field ) ; } if ( $ index -> type ( ) !== 'foreign' ) { $ index -> table ( $ this -> table ) ; } $ this -> indexes [ $ index -> name ( ) ] = $ index ; } }
Assigns indexes to model

@param array $indexes

@throws ModelException
Assigns indexes to model