diff --git a/db/db.ddl b/db/db.ddl index 7727df20ff54f487e12cde0dfc1d019fb1baf35e..a7c33b3947513858dc913605bdf69aee215bfc6f 100644 --- a/db/db.ddl +++ b/db/db.ddl @@ -179,7 +179,7 @@ CREATE TABLE participants ( user_id int NOT NULL REFERENCES users(user_id), year int NOT NULL, -- ročník MO school int NOT NULL REFERENCES places(place_id), - birth_year int NOT NULL, + birth_year int, grade varchar(20) NOT NULL, -- třída ve tvaru "X/Y" registered_on timestamp with time zone DEFAULT NULL, -- kdy se účastník přihlásil (NULL, pokud ho přihlásil organizátor) PRIMARY KEY (user_id, year) diff --git a/db/upgrade-20230929.sql b/db/upgrade-20230929.sql new file mode 100644 index 0000000000000000000000000000000000000000..576c8e28e870ceff20aa26490566cebd2e827bb6 --- /dev/null +++ b/db/upgrade-20230929.sql @@ -0,0 +1,4 @@ +SET ROLE 'mo_osmo'; + +ALTER TABLE participants + ALTER COLUMN birth_year DROP NOT NULL; diff --git a/mo/db.py b/mo/db.py index 33f4156b179be7e3779a3e791255df41609060ad..434f35594c8d908405d170365eb41eff3641edb9 100644 --- a/mo/db.py +++ b/mo/db.py @@ -541,7 +541,7 @@ class Participant(Base): user_id = Column(Integer, ForeignKey('users.user_id'), primary_key=True, nullable=False) year = Column(Integer, primary_key=True, nullable=False) school = Column(Integer, ForeignKey('places.place_id'), nullable=False) - birth_year = Column(Integer, nullable=False) + birth_year = Column(Integer, nullable=True) grade = Column(String(20), nullable=False) registered_on = Column(DateTime(True))