Skip to content

Commit 9c4eaca

Browse files
committed
Db connection successful.
1 parent 7b805d7 commit 9c4eaca

File tree

6 files changed

+64
-1
lines changed

6 files changed

+64
-1
lines changed

src/ch9-sqlalchemy/final/pypi_sqlalchemy/.idea/dataSources.xml

Lines changed: 39 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/ch9-sqlalchemy/final/pypi_sqlalchemy/.idea/dictionaries/screencaster.xml

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/ch9-sqlalchemy/final/pypi_sqlalchemy/pypi/__init__.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,16 @@
1+
import os
2+
13
from pyramid.config import Configurator
24

5+
from pypi.data.db_session import DbSession
6+
37

48
def main(global_config, **settings):
59
""" This function returns a Pyramid WSGI application.
610
"""
711
config = Configurator(settings=settings)
812
init_includes(config)
13+
init_db(config)
914
init_routing(config)
1015

1116
return config.make_wsgi_app()
@@ -45,3 +50,13 @@ def init_routing(config):
4550
config.add_route('cms_page', '*subpath')
4651

4752
config.scan()
53+
54+
55+
def init_db(_):
56+
db_file = os.path.abspath(
57+
os.path.join(
58+
os.path.dirname(__file__),
59+
'db',
60+
'pypi.sqlite'
61+
))
62+
DbSession.global_init(db_file)
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# noinspection PyUnresolvedReferences
2+
from pypi.data.packages import Package
3+
4+
# And all the others we define...

src/ch9-sqlalchemy/final/pypi_sqlalchemy/pypi/data/db_session.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import sqlalchemy
2-
32
import sqlalchemy.orm
3+
from pypi.data.modelbase import SqlAlchemyBase
4+
# noinspection PyUnresolvedReferences
5+
import pypi.data.__all_models
46

57

68
class DbSession:
@@ -21,3 +23,5 @@ def global_init(db_file: str):
2123
engine = sqlalchemy.create_engine(conn_str, echo=False)
2224
DbSession.engine = engine
2325
DbSession.factory = sqlalchemy.orm.sessionmaker(bind=engine)
26+
27+
SqlAlchemyBase.metadata.create_all(engine)
12 KB
Binary file not shown.

0 commit comments

Comments
 (0)