diff --git a/create_db.py b/create_db.py new file mode 100755 index 0000000..2c1c6f9 --- /dev/null +++ b/create_db.py @@ -0,0 +1,35 @@ +#!/usr/bin/python3 + +from sqlalchemy.schema import CreateIndex, CreateTable + +from matcher import database, model + +DB_URL = "postgresql:///matcher" +database.init_db(DB_URL) + + +def create_db(): + model.Base.metadata.create_all(database.session.get_bind()) + + +def print_create_table(classes): + database.init_db(DB_URL) + + engine = database.session.get_bind() + + for cls in classes: + sql = str(CreateTable(cls.__table__).compile(engine)) + print(sql.strip() + ";") + + for index in cls.__table__.indexes: + sql = str(CreateIndex(index).compile(engine)) + print(sql.strip() + ";") + + +# print_create_table([model.ItemIsA]) +# print_create_table([model.EditSession]) +# print_create_table([model.Changeset, model.ChangesetEdit, model.SkipIsA]) +# print_create_table([model.User]) +# print_create_table([model.Extract]) + +create_db() diff --git a/requirements.txt b/requirements.txt index 35585c9..1a601c3 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,14 +1,13 @@ -flask==3.0.3 --e git+https://github.com/maxcountryman/flask-login.git@26d12eaa99a18fc91e662ef0c8466245b8865c1c#egg=Flask-Login -GeoIP==1.3.2 -lxml==5.3.0 -maxminddb==2.6.2 -requests==2.32.3 -sqlalchemy==2.0.32 -requests_oauthlib==2.0.0 -geoalchemy2==0.15.2 -simplejson==3.19.3 -user_agents==2.2.0 -num2words==0.5.13 -psycopg2==2.9.9 - +flask +-e git+https://github.com/maxcountryman/flask-login.git#egg=Flask-Login +GeoIP +lxml +maxminddb +requests +sqlalchemy +requests_oauthlib +geoalchemy2 +simplejson +user_agents +num2words +psycopg2