Skip to content

Commit 28f1646

Browse files
committed
Connecting to MongoDB in place.
1 parent 5e99a20 commit 28f1646

File tree

7 files changed

+42
-8
lines changed

7 files changed

+42
-8
lines changed

app/ch16_mongodb/final/.idea/.name

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

app/ch16_mongodb/final/.idea/dictionaries/screencaster.xml

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

app/ch16_mongodb/final/.idea/modules.xml

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

app/ch16_mongodb/final/pypi_org/app.py

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33

44
import flask
55

6+
from pypi_org.nosql import mongo_setup
7+
68
folder = os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))
79
sys.path.insert(0, folder)
810
import pypi_org.data.db_session as db_session
@@ -27,12 +29,7 @@ def configure():
2729

2830

2931
def setup_db():
30-
db_file = os.path.join(
31-
os.path.dirname(__file__),
32-
'db',
33-
'pypi.sqlite')
34-
35-
db_session.global_init(db_file)
32+
mongo_setup.global_init()
3633

3734

3835
def register_blueprints():
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
import ssl
2+
3+
import mongoengine
4+
5+
6+
def global_init(user=None, password=None, port=27017,
7+
server='localhost', use_ssl=True, db_name='pypi'):
8+
if user or password:
9+
# noinspection PyUnresolvedReferences
10+
data = dict(
11+
username=user,
12+
password=password,
13+
host=server,
14+
port=port,
15+
authentication_source='admin',
16+
authentication_mechanism='SCRAM-SHA-1',
17+
ssl=use_ssl,
18+
ssl_cert_reqs=ssl.CERT_NONE)
19+
mongoengine.register_connection(alias='core', name=db_name, **data)
20+
data['password'] = '*************'
21+
print(" --> Registering prod connection: {}".format(data))
22+
else:
23+
print(" --> Registering dev connection")
24+
mongoengine.register_connection(alias='core', name=db_name)
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
werkzeug
22
flask
33
sqlalchemy
4+
mongoengine
45

56
progressbar2
67
python-dateutil
78
passlib
8-

0 commit comments

Comments
 (0)