# `CommandRecord`

The CommandRecord class is accessible via the `sqlobject.manager.command` module.

## Attributes

#### a `min_args`

    0

#### a `help`

    'Record state of table definitions.  The state of each table is written out to a separate file in a directory, and that directory forms a "version".  A table is also added to your database (sqlobject_db_version) that reflects the version the database is currently at.  Use the upgrade command to sync databases with code.'

#### a `parser`

    <optparse.OptionParser instance at 0x939698c>

#### a `aliases`

    ()

#### a `max_args`

    0

#### a `max_args_error`

    'You must provide no more than %(max_args)s arguments'

#### a `description`

    None

#### a `prog_name`

    <property object at 0x945a194>

#### a `name`

    'record'

#### a `summary`

    'Record historical information about the database status'

#### a `min_args_error`

    'You must provide at least %(min_args)s arguments'

#### a `version_regex`

    <_sre.SRE_Pattern object at 0x9437420>

#### a `required_args`

    []

## Methods

#### f `__sizeof__(...)` ...

__sizeof__() -> int size of object in memory, in bytes

#### f `__format__(...)` ...

default object formatter

#### f `__subclasshook__(...)` ...

Abstract classes can override this to customize issubclass().

This is invoked early on by abc.ABCMeta.__subclasscheck__(). It should return True, False or NotImplemented. If it returns NotImplemented, the normal algorithm is used. Otherwise, it overrides the normal algorithm (and the outcome is cached).

#### f `orderClassesByDependencyLevel(self, classes)` ...

Return classes ordered by their depth in the class dependency tree (this is not the inheritance tree), from the top level (independant) classes to the deepest level. The dependency tree is defined by the foreign key relations.

#### f `__classinit__(cls, new_args)` ...

#### f `__init__(self, invoked_as, command_name, args, runner)` ...

#### f `run(self)` ...

#### f `classes(self, require_connection=True, require_some=False)` ...

#### f `classes_from_module(self, module)` ...

#### f `connection(self)` ...

#### f `config(self)` ...

#### f `ini_config(self, conf_fn)` ...

#### f `classes_from_package(self, package_name)` ...

#### f `classes_from_egg(self, egg_spec)` ...

#### f `load_options_from_egg(self, egg_spec)` ...

#### f `config_from_egg(self, egg_spec, warn_no_sqlobject=True)` ...

#### f `ask(self, prompt, safe=False, default=True)` ...

#### f `shorten_filename(self, fn)` ...

Shortens a filename to make it relative to the current directory (if it can). For display purposes.

#### f `open_editor(self, pretext, breaker=None, extension='.txt')` ...

Open an editor with the given text. Return the new text, or None if no edits were made. If given, everything after breaker will be ignored.

#### f `command(self)` ...

#### f `update_db(self, version, conn)` ...

#### f `strip_comments(self, sql)` ...

#### f `base_dir(self)` ...

#### f `find_output_dir(self)` ...

#### f `find_last_version(self)` ...

#### f `command_force_db_version(self)` ...

See the source for more information.