2 Stimmen

Richtiger Ort zum Einrichten der MySQLdb-Verbindung in Pylons: app_globals? Thread-Sicherheit?

Ich möchte MySQLdb in Pylons verwenden, kann aber nicht herausfinden, wo ich eine Verbindung herstellen kann. Es scheint, dass die Verbindung in app_globals.py bequem sein würde:

class Globals(object):
    def __init__(self):
        self.db = MySQLdb.connect()

Dann können die Controller über die Globals auf die Datenbank zugreifen. Allerdings scheint dies zu Problemen mit "MySQL hat weg" Fehler und Abstürze mit gleichzeitigen Anforderungen führen, so dass ich denke, dass dies schlecht ist, weil der Thread-Sicherheit.

Wie lässt sich dies am besten bewerkstelligen? Sollte jeder Controller eine MySQL-Verbindung öffnen und dann wieder schließen? Vielen Dank!

1voto

Brighid McDonnell Punkte 4209

Um die Kommentare zu Ihrer Frage zusammenzufassen: Sie sollten wahrscheinlich die Nicht-ORM-Funktionen von SQLAlchemy verwenden, wie zum Beispiel die SQL-Ausdruckssprache und die Engine-API die es Ihnen ermöglichen, einige der Vorteile von SQLAlchemy zu nutzen, ohne den ganzen Weg bis zur ORM-Eigenschaft gehen zu müssen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X