Mal ein Beispiel:
Ich hab folgende Hirachie:
- 1. Ebene: Schreibtische
- 2. Ebene: Schubladen
- 3. Ebene: Dosen
- 2. Ebene: Schubladen
Ich würde sagen der Klassische Fall.
Wo Kommen die Attribute parent_id hin und wo die Methoden save_to_db() ???
Ich wollte das so machen, das jede Klasse (Schreibtisch, Schublade, Dose) die Methode save_to_db() bekommt.
Nun gibt es mehrere Möglichkeiten:
1. Ich rufe Schreibtisch.save_to_db() auf. Der Schreibtisch wird in die DB eingetragen und bekommt eine ID, die ich der nächsten Methode mitgebe, also: Schublade.save_to_db(ID). Die Schublade speichert sich dann in die DB und vermerkt die parent_id... usw...
2. Jedes Objekt hat das Attribut parent_id welches bei der Instanzierung mitgegeben wird. Bei dem Aufruf der save_to_db()-Methode braucht man die IDs also nicht übergeben...
3. Nicht die Dose hat eine Methode save_to_db(), sondern die Schublade speichert die Dose in die DB. Von daher muß die Dose garnicht wissen in welcher Schublade sie liegt...
Welche Variante ist die "Beste" ???