Empfehlungen: Erweiterte Suche

leere Datensätze vor der Ausgabe ersetzen

Datenbankobjekte strukturieren und validieren

leere Datensätze vor der Ausgabe ersetzen

Beitragvon Mozzarella » Fr 21. Aug 2009, 17:51

Hallo,

ich möchte schlicht und ergreifend leere Felder einer Datenbanktabelle vor der Ausgabe durch "keine Angabe" oder ähnliches ersetzen.
Vermutlich geht das mit der afterFind-Methode schnell und einfach, aber ich weiß nicht, wie ich meinen Befehl formulieren soll.
Kann mir jemand helfen? Vielen Dank!

P.S. Natürlich könnte ich auch im View vor der Ausgabe jedes Wertes ein if (emtpy($blablaba)) setzen, aber das ist ja hochgradig redundant. :(
Mozzarella
 
Beiträge: 13
Registriert: Fr 21. Aug 2009, 17:43
CakePHP-Version: 1.2.4.8284
OS: Windows

Re: leere Datensätze vor der Ausgabe ersetzen

Beitragvon euromark » Fr 21. Aug 2009, 21:32

nee, ich würde das nicht als redudant ansehen^^

außerdem könnte man dafür eine helferfunktion benutzen
echo $common->display($var);

mit

function display($var, $default = 'keine Angabe') {}

etc
euromark
 
Beiträge: 643
Registriert: Fr 27. Jun 2008, 22:17
Wohnort: München
CakePHP-Version: 2.x
OS: Windows

Re: leere Datensätze vor der Ausgabe ersetzen

Beitragvon Mozzarella » Sa 22. Aug 2009, 09:21

Hm. Und mit afterFind(), wie geht das? Muß doch auch möglich sein?
Mozzarella
 
Beiträge: 13
Registriert: Fr 21. Aug 2009, 17:43
CakePHP-Version: 1.2.4.8284
OS: Windows

Re: leere Datensätze vor der Ausgabe ersetzen

Beitragvon euromark » Sa 22. Aug 2009, 16:37

jaa, aber sowas ist in 99% der fälle "hochgradig käse"

@see manuals über afterFind()
euromark
 
Beiträge: 643
Registriert: Fr 27. Jun 2008, 22:17
Wohnort: München
CakePHP-Version: 2.x
OS: Windows

Re: leere Datensätze vor der Ausgabe ersetzen

Beitragvon Mozzarella » Mi 26. Aug 2009, 08:58

Warum sollte das Käse sein?
Hast du mir einen Link zu so einem Manual? In den CakePHP-Docs steht nicht besonders viel zu afterFind().

Dankeschön!
Mozzarella
 
Beiträge: 13
Registriert: Fr 21. Aug 2009, 17:43
CakePHP-Version: 1.2.4.8284
OS: Windows

Re: leere Datensätze vor der Ausgabe ersetzen

Beitragvon burzum » Fr 4. Sep 2009, 02:12

Mozzarella hat geschrieben:Warum sollte das Käse sein?
Hast du mir einen Link zu so einem Manual? In den CakePHP-Docs steht nicht besonders viel zu afterFind().

Dankeschön!


Eigentlich ist das doch ausreichend was da steht?
http://book.cakephp.org/view/681/afterFind

Ich würde Dir empfehlen einfach ein debug($results) an den Anfang der Methode zu setzen, dann siehst Du wie die Daten reinkommen, dann manipulierst Du sie, dann return $results am Ende wieder - fertig.

Die Felder selber würde ich mit einer foreach schleife durchgehen und auf if empty checken, wenn ja dann das Feld mit __('Keine Angabe'); füllen. Wenn Du nur bestimmte Felder willst würde ich mir eine private Method schreiben autoFillEmpty(array, string) wobei array die Felder enthält die, wenn sie leer sind, mit string gefüllt werden. Die Method dann in der foreach Schleife in afterFind benutzen. So ist der Code sauber separiert.
burzum
 
Beiträge: 5
Registriert: Fr 4. Sep 2009, 01:50
CakePHP-Version: head
OS: Win7/OSX

Re: leere Datensätze vor der Ausgabe ersetzen

Beitragvon Mozzarella » Fr 4. Sep 2009, 09:41

Vielen Dank!!
Mozzarella
 
Beiträge: 13
Registriert: Fr 21. Aug 2009, 17:43
CakePHP-Version: 1.2.4.8284
OS: Windows


Zurück zu Models

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast