summaryrefslogtreecommitdiff
path: root/shopdb/_base.py
diff options
context:
space:
mode:
authorBlaise Thompson <blaise@untzag.com>2019-11-12 08:32:41 -0600
committerBlaise Thompson <blaise@untzag.com>2019-11-12 08:32:41 -0600
commitbe8b011c9c4c44f8de99d5cf19ebd1dae5b7dfe9 (patch)
treebcbb5b931f6fb8649c20f435c7d8c28ea7ff99a3 /shopdb/_base.py
parent0a526a560a44581047970a6f1057ca1d283499d9 (diff)
coloring
Diffstat (limited to 'shopdb/_base.py')
-rw-r--r--shopdb/_base.py16
1 files changed, 13 insertions, 3 deletions
diff --git a/shopdb/_base.py b/shopdb/_base.py
index 8033d28..5e8c3bc 100644
--- a/shopdb/_base.py
+++ b/shopdb/_base.py
@@ -1,8 +1,18 @@
-__all__ = ["engine", "Base"]
+__all__ = ["engine", "Base", "Session"]
+import appdirs
+import pathlib
import sqlalchemy
+from sqlalchemy.ext.declarative import declarative_base
+from sqlalchemy.orm import sessionmaker
-engine = sqlalchemy.create_engine("sqlite:///:memory:", echo=True)
-Base = sqlalchemy.ext.declarative.declarative_base
+
+path = pathlib.Path(appdirs.user_data_dir(appname="shopdb")) / "sqlite3.db"
+path.parent.mkdir(parents=True, exist_ok=True)
+engine = sqlalchemy.create_engine(f"sqlite:///{path}", echo=False)
+
+Base = declarative_base()
+
+Session = sessionmaker(bind=engine)