Seite 1 von 1

System von sqlalchemy

Verfasst: Montag 12. August 2013, 11:43
von sprudel
Hallo,

ich plane ein kleines Warenwirtschaftssystem mit Sqlalchemy. Möchte verschiedene Klassen, unter anderem für eine ProductDefinition (eine Vorlage), für Produkte ansich (die auf Basis dieser erstellt werden), für Transaction, usw.

Jedenfalls würde ich hier gerne SqlAlchemy verwenden. Jetzt möchte ich aber ungern meine eigenen Objekte zu Sqlalchemy-Objekten machen, sondern das irgendwie anders miteinander verbinden. Da Python ja keine wirklich strengen "private"-Methoden ermöglicht, würde ich diese Objekte einfach ungern für mögliche Module und Erweiterungen rausgeben, sondern eben wirklich nur meine eigenen (die dann auch eine Rechteverwaltung enthalten, damit nicht jeder alles mit den Objekten machen kann)... Ist sowas üblich? Und wenn ja, wie mache ich das am besten?

Vielen Dank.

Re: System von sqlalchemy

Verfasst: Montag 12. August 2013, 12:03
von BlackJack
@sprudel: Wenn Du innerhalb von einem Python-Programm ein Rechtesystem einführen willst, das nicht jeder Code im Programm alles mögliche mit Objekten anstellen kann, dann hast Du schon verloren. Wenn Du Programmierern von anderen Teilen Deines Programms nicht vertraust, dann dürfen deren Teile schlicht nicht im gleichen Interpreter/Prozess laufen.

Re: System von sqlalchemy

Verfasst: Montag 12. August 2013, 12:06
von sprudel
Okay, das ist wohl in gewisser Form wahr. Du meinst also, ich soll meine Klassen direkt zu SqlAlchemy-Klassen machen, und so auch damit arbeiten? Dann eine andere Frage: Ich habe gelesen, dass es möglich ist, die Attribute der Klassen zwar z.B. _id oder _name zu nennen, das SqlAlchemy diese dann aber nicht mit dem _ am Anfang in der Datenbank speichert. Wie geht das?

Re: System von sqlalchemy

Verfasst: Montag 12. August 2013, 12:40
von BlackJack
@sprudel: Ich weiss nicht ob das jetzt echt erklären soll, denn wie man Attribute auf andere Namen in Datenbankspalten abbildet bekommst Du automatisch mit wenn Du die Dokumentation dazu liesst, wie man überhaupt Attribute auf Datenbankspalten abbildet. Wobei ich mir an Deiner Stelle auch dort nicht so viel Gedanken machen würde. Wer nicht weiss, dass man die eindeutige ID nicht einfach ändert, der wird sich auch von einem Unterstrich nicht davon abhalten lassen Unsinn anzustellen.

Re: System von sqlalchemy

Verfasst: Montag 12. August 2013, 13:32
von sprudel
Okay, stimmt wohl. Eine allerletzte Frage habe ich noch: Wird Elixir noch aktiv weiterentwickelt, also kann man es auch benutzen? Oder spricht da irgendwas dagegen? Hat Elixir Grenzen, oder kann man diese auch mit den SqlAlchemy-Mitteln übersteigen? (es basiert ja darauf)

Re: System von sqlalchemy

Verfasst: Montag 12. August 2013, 13:41
von DasIch
Elixir ist überflüssig geworden und dementsprechend tot.