Bedste måde at integrere SqlAlchemy i et Django-projekt

Jeg ændrede min Django-applikation til at bruge SQLAlchemy, og den fungerer nu.

Men jeg spekulerer på, hvor jeg skal sætte disse linjer:

engine = sqlalchemy.create_engine(settings.DATABASE_URL)
Session = sqlalchemy.orm.sessionmaker(bind=engine)
session = Session()

Grunden til, at jeg spørger, er fordi Jeg vil bruge SQLAlchemy mange steder, og jeg synes ikke, det er korrekt / kraftfuldt / velskrevet at kalde dette tre linjer hver gang jeg har brug for databasen.

Det sted, jeg skal bruge SA, er:

  • Efter mine synspunkter skrev jeg naturligvis
  • I nogle middleware
  • I mine modeller. Som i get_all_tags for en BlogPost-model.

Hvad jeg tror ville være korrekt, er at få sessionen ved at oprette forbindelse til databasen igen, hvis sessionen er lukket, eller bare returnere den aktuelle, tilsluttet session hvis der findes.

Hvordan kan jeg bruge SQLAlchemy korrekt med mine Django-apps?

Tak for din hjælp!

Bemærk: Jeg har allerede fulgt denne vejledning for at implementere SA i min Django-applikation, men denne gør ikke fortæl mig nøjagtigt, hvor de 3 linjer skal placeres ( http://lethain.com/entry/2008/jul/23/replacing-django-s-orm-with-sqlalchemy/ ).

16
задан Cyril N. 7 July 2011 в 06:32
поделиться