wcs_olap: improve comments on pg objects
This commit is contained in:
parent
af6a453ffb
commit
b972629182
|
@ -300,17 +300,21 @@ class WcsOlapFeeder(object):
|
|||
|
||||
def do_base_table(self):
|
||||
# channels
|
||||
self.create_labeled_table('{channel_table}', [[c[0], c[2]] for c in self.channels])
|
||||
self.create_labeled_table('{channel_table}', [[c[0], c[2]] for c in self.channels],
|
||||
comment=u'canal')
|
||||
|
||||
# roles
|
||||
roles = dict((i, role.name) for i, role in enumerate(self.roles))
|
||||
self.create_labeled_table('{role_table}', roles.items())
|
||||
self.create_labeled_table('{role_table}', roles.items(), comment=u'role')
|
||||
self.role_mapping = dict((role.id, i) for i, role in enumerate(self.roles))
|
||||
|
||||
# categories
|
||||
self.create_labeled_table('{category_table}', enumerate(c.name for c in self.categories))
|
||||
self.create_labeled_table('{category_table}', enumerate(c.name for c in self.categories),
|
||||
comment=u'catégorie')
|
||||
self.categories_mapping = dict((c.id, i) for i, c in enumerate(self.categories))
|
||||
|
||||
self.create_labeled_table('{hour_table}', zip(range(0, 24), map(str, range(0, 24))),
|
||||
comment=u'heures')
|
||||
# years
|
||||
self.create_labeled_table('{year_table}', zip(range(2000, 2030), map(str, range(2000,
|
||||
2030))))
|
||||
|
@ -328,12 +332,12 @@ class WcsOlapFeeder(object):
|
|||
u'jeudi', u'vendredi', u'samedi',
|
||||
u'dimanche']))
|
||||
|
||||
self.create_labeled_table('{hour_table}', zip(range(0, 24), map(str, range(0, 24))))
|
||||
|
||||
self.create_labeled_table('{generic_status_table}', self.status)
|
||||
self.create_labeled_table('{generic_status_table}', self.status,
|
||||
comment=u'statuts simplifiés')
|
||||
self.ex('CREATE TABLE {form_table} (id serial PRIMARY KEY,'
|
||||
' category_id integer REFERENCES {category_table} (id),'
|
||||
' label varchar)')
|
||||
self.ex('COMMENT ON TABLE {form_table} IS %s', vars=(u'types de formulaire',))
|
||||
self.columns = [
|
||||
['id', 'serial primary key'],
|
||||
['formdef_id', 'smallint REFERENCES {form_table} (id)'],
|
||||
|
@ -356,6 +360,7 @@ class WcsOlapFeeder(object):
|
|||
self.create_table('{generic_formdata_table}', self.columns)
|
||||
for at, comment in self.comments.iteritems():
|
||||
self.ex('COMMENT ON COLUMN {generic_formdata_table}.%s IS %%s' % at, vars=(comment,))
|
||||
self.ex('COMMENT ON TABLE {generic_formdata_table} IS %s', vars=(u'tous les formulaires',))
|
||||
|
||||
def feed(self):
|
||||
if self.do_feed:
|
||||
|
@ -400,7 +405,9 @@ class WcsFormdefFeeder(object):
|
|||
def do_statuses(self):
|
||||
statuses = self.formdef.schema.workflow.statuses
|
||||
self.olap_feeder.create_labeled_table(self.status_table_name,
|
||||
enumerate([s.name for s in statuses]))
|
||||
enumerate([s.name for s in statuses]),
|
||||
comment=u'statuts du formulaire « %s »' %
|
||||
self.formdef.schema.name)
|
||||
self.status_mapping = dict((s.id, i) for i, s in enumerate(statuses))
|
||||
|
||||
def do_data_table(self):
|
||||
|
@ -420,8 +427,8 @@ class WcsFormdefFeeder(object):
|
|||
if not field.varname:
|
||||
continue
|
||||
self.fields.append(field)
|
||||
comment = (u'dim$%s$Valeur du champ « %s » du formulaire %s'
|
||||
% (field.label, field.label, self.formdef.schema.name))
|
||||
comment = (u'valeurs du champ « %s » du formulaire %s'
|
||||
% (field.label, self.formdef.schema.name))
|
||||
table_name = self.hash_table_name('{formdata_table}_field_%s' % field.varname)
|
||||
# create table and mapping
|
||||
if field.items:
|
||||
|
@ -439,24 +446,24 @@ class WcsFormdefFeeder(object):
|
|||
|
||||
at = 'field_%s' % field.varname
|
||||
columns.append([at, 'smallint REFERENCES %s (id)' % table_name])
|
||||
comments[at] = u'dim$' + field.label
|
||||
comments[at] = field.label
|
||||
|
||||
# add geolocation fields
|
||||
for geolocation, label in self.formdef.schema.geolocations:
|
||||
at = 'geolocation_%s' % geolocation
|
||||
columns.append([at, 'point'])
|
||||
comments[at] = u'dim$' + label
|
||||
comments[at] = label
|
||||
|
||||
# add function fields
|
||||
for function, name in self.formdef.schema.workflow.functions.iteritems():
|
||||
at = 'function_%s' % slugify(function)
|
||||
columns.append([at, 'smallint REFERENCES {role_table} (id)'])
|
||||
comments[at] = u'dim$Fonction « %s »' % name
|
||||
comments[at] = u'fonction « %s »' % name
|
||||
|
||||
self.columns = ([name for name, _type in self.olap_feeder.columns]
|
||||
+ [name for name, _type in columns])
|
||||
self.create_table('{formdata_table}', columns, inherits='{generic_formdata_table}',
|
||||
comment=u'cube$%s' % self.formdef.schema.name)
|
||||
comment=u'formulaire %s' % self.formdef.schema.name)
|
||||
for at, comment in comments.iteritems():
|
||||
self.ex('COMMENT ON COLUMN {formdata_table}.%s IS %%s' % at, vars=(comment,))
|
||||
# PostgreSQL does not propagate foreign key constraints to child tables
|
||||
|
|
Reference in New Issue