2014-01-17 9 views
1

Во-первых, я новичок в Python.Несколько баз данных в Pyramid

Теперь, когда все в порядке. Я пытаюсь получить доступ к данным по двум различным базам данных и отображать информацию на одном представлении.

http://docs.pylonsproject.org/projects/pyramid_cookbook/en/latest/pylons/models.html#multiple-databases

Это^кажется неполным после первого абзаца. У меня есть первая база данных, работающая и полная, и она отлично работает. Теперь я пытаюсь включить вторую базу данных.

Я не могу найти нигде, как должен выглядеть мой файл development.ini, если у меня есть вторая база данных. У меня есть это:

sqlalchemy.url = mssql+pyodbc://[databasestuffsredacted] 

, и я понял, что-то вроде

db2 = mssql+pyodbc://[seconddbstuffsredacted] 

(обе базы данных используют один и тот же тип и драйвер) Из previous stack overflow question, это было сказано:

DBSession2 = orm.scoped_session(orm.sessionmaker(extension=ZTE()) 

Но, как в мире это говорит с моей второй базой данных. Мне не хватает ключевой части здесь, которая, я думаю, должна была быть в документе выше после первого абзаца.

ответ

7

вы можете записать его в модуле

engine= create_engine('postgresql://user:[email protected]/db1') 
DBSession = scoped_session(sessionmaker(extension=ZopeTransactionExtension())) 
DBSession.configure(bind=engine) 

engine2= create_engine('postgresql://user:[email protected]/db2') 
DBSession2 = scoped_session(sessionmaker(extension=ZopeTransactionExtension())) 
DBSession2.configure(bind=engine2) 
+0

Я предполагаю, что информация будет идти в моем init.py, так что я бы просто удалить информацию дб от моего development.ini? – JeremyDavis

+0

вы можете добавить его в models.py или создать модели пакетов, а затем написать в нем новый модуль. –

+0

Получил его работу, добавлен в модели, и он отлично работает. Благодаря! – JeremyDavis

Смежные вопросы