2106fc632dac1f9c7c0eecaba5bacabe193116b2
[sfa.git] / sfa / storage / migrations / versions / 001_slice_researchers.py
1 # this move is about adding a slice x users many to many relation ship for modelling 
2 # regular "membership" of users in a slice
3
4 from sqlalchemy import Table, MetaData, Column, ForeignKey
5 from sqlalchemy import Integer, String
6
7 metadata = MetaData()
8
9 # this is needed by migrate so it can locate 'records.record_id'
10 records = \
11     Table ( 'records', metadata,
12             Column ('record_id', Integer, primary_key=True),
13             )
14
15 # slice x user (researchers) association
16 slice_researcher_table = \
17     Table ( 'slice_researcher', metadata,
18             Column ('slice_id', Integer, ForeignKey ('records.record_id'), primary_key=True),
19             Column ('researcher_id', Integer, ForeignKey ('records.record_id'), primary_key=True),
20             )
21
22 def upgrade(migrate_engine):
23     metadata.bind = migrate_engine
24     slice_researcher_table.create()
25
26 def downgrade(migrate_engine):
27     metadata.bind = migrate_engine
28     slice_researcher_table.drop()