/** * Reset the migration. * * @param Migration $migration */ public function reset(Migration $migration) { $this->input->read($migration); foreach ($migration->getFields() as $field) { if ($field = $this->fields->findBySlugAndNamespace($field['slug'], $field['namespace'])) { $this->fields->delete($field); } } }
/** * Handle the command. * * @param RollbackFields $command */ public function handle(RollbackFields $command) { $migration = $command->getMigration(); $addon = $migration->getAddon(); $namespace = $migration->getNamespace(); foreach ($migration->getFields() as $slug => $field) { $namespace = array_get($field, 'namespace', $namespace ?: ($addon ? $addon->getSlug() : null)); if ($field = $this->fields->findBySlugAndNamespace($slug, $namespace)) { $this->fields->delete($field); } } }