diff --git a/database.py b/database.py index 296b07dbcdc9e82052796d7c088009fc8e99f3e1..695797e8bc8c6be07105cfd041ff3137ae4033fc 100644 --- a/database.py +++ b/database.py @@ -52,10 +52,19 @@ class Person(Persisted): back_populates='reviewers') # If we want to be able to access the join table's pairs themselves, we write a standard one-to-many relationship # with extra information. - reviewerships = relationship('Reviewership', uselist=True, foreign_keys='[Reviewership.reviewer_id]', - back_populates='reviewer') - revieweeships = relationship('Reviewership', uselist=True, foreign_keys='[Reviewership.reviewee_id]', - back_populates='reviewee') + # (replace the reviewers & reviewees relationships on lines 45-52 with: + # reviewers = relationship('Person', uselist=True, secondary='reviewerships', + # primaryjoin='Reviewership.reviewee_id == Person.person_id', + # secondaryjoin='Reviewership.reviewer_id == Person.person_id', + # viewonly=True) + # reviewees = relationship('Person', uselist=True, secondary='reviewerships', + # primaryjoin='Reviewership.reviewer_id == Person.person_id', + # secondaryjoin='Reviewership.reviewee_id == Person.person_id', + # viewonly=True) + # reviewerships = relationship('Reviewership', uselist=True, foreign_keys='[Reviewership.reviewer_id]', + # back_populates='reviewer') + # revieweeships = relationship('Reviewership', uselist=True, foreign_keys='[Reviewership.reviewee_id]', + # back_populates='reviewee') class Reviewership(Persisted): @@ -64,10 +73,10 @@ class Reviewership(Persisted): reviewee_id = Column(Integer, ForeignKey('people.person_id', ondelete='CASCADE'), primary_key=True) # If we want to be able to access the related records from a join-table pairs, we write a standard many-to-one # relationship with extra information. - reviewer = relationship('Person', foreign_keys='[Reviewership.reviewer_id]', remote_side='[Person.person_id]', - back_populates='reviewerships') - reviewee = relationship('Person', foreign_keys='[Reviewership.reviewee_id]', remote_side='[Person.person_id]', - back_populates='revieweeships') + # reviewer = relationship('Person', foreign_keys='[Reviewership.reviewer_id]', remote_side='[Person.person_id]', + # back_populates='reviewerships') + # reviewee = relationship('Person', foreign_keys='[Reviewership.reviewee_id]', remote_side='[Person.person_id]', + # back_populates='revieweeships') class Database(object): diff --git a/installer.py b/installer.py index 572fb6205e3bec59cc2e79aef8752ffb88aa5b27..5d5eef56974eb4306fd1ee281971de7ef77d973b 100644 --- a/installer.py +++ b/installer.py @@ -19,7 +19,7 @@ def add_starter_data(session): def main(): try: - url = Database.construct_mysql_url('localhost', 3306, 'people', 'root', 'cse') + url = Database.construct_mysql_url('localhost', 3306, 'people', 'root', '') database = Database(url) database.ensure_tables_exist() print('Tables created.')