When a column is converted to a function, by default the db column is
dropped. Sometimes this is a bad idea, until the data is migrated.
Let an attribute change this behaviour.
bzr revid: p_christ@hol.gr-
20090913143021-6tj3c16n4lli9rls
f_pg_type = f_pg_def['typname']
f_pg_size = f_pg_def['size']
f_pg_notnull = f_pg_def['attnotnull']
- if isinstance(f, fields.function) and not f.store:
+ if isinstance(f, fields.function) and not f.store and (not hasattr(f,'nodrop') or not f.nodrop):
logger.notifyChannel('orm', netsvc.LOG_INFO, 'column %s (%s) in table %s removed: converted to a function !\n' % (k, f.string, self._table))
cr.execute('ALTER TABLE %s DROP COLUMN %s'% (self._table, k))
cr.commit()