aboutsummaryrefslogtreecommitdiff
path: root/site/service/db.py
diff options
context:
space:
mode:
authorRichard <q@1bpm.net>2025-04-13 18:48:02 +0100
committerRichard <q@1bpm.net>2025-04-13 18:48:02 +0100
commit9fbf91db06a6d4f4b5cd8bb45389a731bb86bf22 (patch)
tree291bd79ce340e67affa755a8a6b4f6a83cce93ea /site/service/db.py
downloadapps.csound.1bpm.net-9fbf91db06a6d4f4b5cd8bb45389a731bb86bf22.tar.gz
apps.csound.1bpm.net-9fbf91db06a6d4f4b5cd8bb45389a731bb86bf22.tar.bz2
apps.csound.1bpm.net-9fbf91db06a6d4f4b5cd8bb45389a731bb86bf22.zip
initial
Diffstat (limited to 'site/service/db.py')
-rw-r--r--site/service/db.py38
1 files changed, 38 insertions, 0 deletions
diff --git a/site/service/db.py b/site/service/db.py
new file mode 100644
index 0000000..1cb69b8
--- /dev/null
+++ b/site/service/db.py
@@ -0,0 +1,38 @@
+from peewee import *
+import datetime
+from playhouse.postgres_ext import *
+import config
+
+_db = PostgresqlExtDatabase(
+ config.dbname,
+ host=config.dbhost,
+ user=config.dbuser,
+ password=config.dbpassword
+)
+
+class BaseModel(Model):
+ class Meta:
+ database = _db
+
+
+class Users(BaseModel):
+ email = TextField()
+ password = TextField()
+ sessionkey = TextField()
+ created = DateTimeField(default=datetime.datetime.now)
+
+class Session(BaseModel):
+ user = ForeignKeyField(Users, null=True)
+ token = TextField(null=True)
+ created = DateTimeField(default=datetime.datetime.now)
+
+class JData(BaseModel):
+ session = ForeignKeyField(Session, null=True)
+ category = TextField(null=True, index=True)
+ data = JSONField()
+ created = DateTimeField(default=datetime.datetime.now)
+
+
+if __name__ == "__main__":
+ _db.create_tables(BaseModel.__subclasses__(), safe=True)
+