public function buildForeignKeys(SchemaInterface $schema) { return array(); // FIXME $sqls = array(); if ($this->driver->type == 'sqlite') { return $sqls; } foreach ($schema->relations as $rel) { switch ($rel['type']) { case Relationship::BELONGS_TO: case Relationship::HAS_MANY: case Relationship::HAS_ONE: if (isset($rel['self_column']) && $rel['self_column'] != 'id') { $n = $rel['self_column']; $column = $schema->getColumn($n); if ($column->isa == "str") { continue; } $fSchema = new $rel['foreign_schema'](); $constraint = new Constraint(); $constraint->foreignKey($rel['self_column']); $constraint->reference($fSchema->getTable(), (array) $rel['foreign_column']); // $constraint->onUpdate('CASCADE'); // $constraint->onDelete('CASCADE'); $sqls[] = $query->toSql($this->driver, new ArgumentArray()); } } } return $sqls; }