<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def down(self, migration_id):
 """Rollback to migration."""

        if not self.check_directory():
            return

        for migration in self.get_migrations_to_down(migration_id):
            logger.info('Rollback migration %s' % migration.filename)

            migration_module = self.load_migration_file(migration.filename)
            if hasattr(migration_module, 'down'):
                migration_module.down(self.db)
            else:
                logger.info('No down method on %s' % migration.filename)

            self.collection.remove({'filename': migration.filename})