createTable('feature', [ 'id' => 'pk', 'alias' => Schema::TYPE_STRING.' NOT NULL', 'name' => Schema::TYPE_STRING.' NOT NULL', 'description' => Schema::TYPE_TEXT, 'is_paid_feature' => Schema::TYPE_BOOLEAN, 'price' => Schema::TYPE_FLOAT, 'only_for_selected_producers' => Schema::TYPE_BOOLEAN, 'status' => Schema::TYPE_BOOLEAN.' DEFAULT 1', ]); $this->createTable('feature_producer', [ 'id' => 'pk', 'id_producer' => Schema::TYPE_INTEGER.' NOT NULL', 'id_feature' => Schema::TYPE_INTEGER.' NOT NULL', 'status' => Schema::TYPE_BOOLEAN.' DEFAULT 1', ]); $this->addForeignKey('producer_fk', 'feature_producer', 'id_producer', 'producer', 'id'); $this->addForeignKey('feature_fk', 'feature_producer', 'id_feature', 'feature', 'id'); } /** * {@inheritdoc} */ public function safeDown() { $this->dropTable('feature'); $this->dropTable('feature_producer'); } }