'Adds a column.'

def add_column(self, table_name, name, field, *args, **kwds):

    if ((not field.null) and ((not field.has_default()) or (field.get_default() is None)) and (not field.empty_strings_allowed)):
        raise ValueError('You    cannot    add    a    null=False    column    without    a    default    value.')
    field.set_attributes_from_name(name)
    field_default = None
    if (not getattr(field, '_suppress_default', False)):
        default = field.get_default()
        if (default is not None):
            field_default = ("'%s'" % field.get_db_prep_save(default, connection=self._get_connection()))
    field._suppress_default = True
    self._remake_table(table_name, added={field.column: (self._column_sql_for_create(table_name, name, field, False), field_default)})
