Hallo an alle
Ich habe eine relativ komplexe Datenbank, bei welcher ich die meisten Tabellen mit Objekten abbilde, also ActiveRecords mit ein paar für meine Zwecke nötigen Funktionen. Das funktioniert meistens ziemlich gut.
Problem: Diese Objekte spiegeln natürlich nur ein Objekt der Datenbank wieder. Wie löse ich das jetzt am elegantesten, wenn ich beispielsweise alle Datensätze einer Tabelle haben möchte?
Am Beispiel: Ich habe eine Tabelle Bücher und stelle einen Datensatz als Objekt Buch dar. Nun möchte ich meine Bibliothek füllen. Wie komme ich an all die Bücher?
Meine Ansätze: Eine statische Methode zum Bücherobjekt hinzufügen welche mir alle Bücher zurückgibt. Ziemlich mies gelöst meiner Meinung nach.
Zweite Möglichkeit: Eine neue Klasse, die mir alle Bücher auflisten kann. Hier hoffe ich aber das es noch eine bessere Möglichkeit gibt, da ich die Datenbankzugriffe soweit wie möglich in den AR lassen würde (also im Beispiel in der Klasse Buch).
Ich bin mir ziemlich sicher das diese Art von Problem häufiger auftritt, also bin ich guter Dinge hier eine Lösung zu finden
Danke euch schonmal
Ich habe eine relativ komplexe Datenbank, bei welcher ich die meisten Tabellen mit Objekten abbilde, also ActiveRecords mit ein paar für meine Zwecke nötigen Funktionen. Das funktioniert meistens ziemlich gut.
Problem: Diese Objekte spiegeln natürlich nur ein Objekt der Datenbank wieder. Wie löse ich das jetzt am elegantesten, wenn ich beispielsweise alle Datensätze einer Tabelle haben möchte?
Am Beispiel: Ich habe eine Tabelle Bücher und stelle einen Datensatz als Objekt Buch dar. Nun möchte ich meine Bibliothek füllen. Wie komme ich an all die Bücher?
Meine Ansätze: Eine statische Methode zum Bücherobjekt hinzufügen welche mir alle Bücher zurückgibt. Ziemlich mies gelöst meiner Meinung nach.
Zweite Möglichkeit: Eine neue Klasse, die mir alle Bücher auflisten kann. Hier hoffe ich aber das es noch eine bessere Möglichkeit gibt, da ich die Datenbankzugriffe soweit wie möglich in den AR lassen würde (also im Beispiel in der Klasse Buch).
Ich bin mir ziemlich sicher das diese Art von Problem häufiger auftritt, also bin ich guter Dinge hier eine Lösung zu finden
Danke euch schonmal
Kommentar