Empfehlungen: Erweiterte Suche

Im View keinen Zugriff auf gejointe Tabelle

Ausgabedaten formatieren und darstellen

Im View keinen Zugriff auf gejointe Tabelle

Beitragvon Kekskruemel » Di 16. Nov 2010, 11:00

Hallo,

ich bin Anfänger in Sachen cakephp und arbeite mit dem O'Reilly Buch.

Ich habe drei Tabellen in meiner Datenbank:

Stations(id, name, adresse, tel, fax, modified, ...)
Prices(id, station_id, petrol_id, value, created)
Petrols(id, name)

Ich gebe nun mit stations/view/2 z.B. die Daten der tankstelle mit der ID 2 aus. Nun habe ich den View erst gebacken und dann weiter bearbeitet.

Gebe ich das Array aus, so zeigt er mir folgende Daten an:
Array
(
[Station] => Array
(
[id] => 5
[modified] => 0000-00-00 00:00:00
[name] => Gas & More Aachen (Linde)
[adress] => Krefelder Str. 225
[postcode] => 52070
[city] => Aachen
[active] => 1
[land] => DE
[sm] => 0
[info] =>
[money] => 1
[opentimesweek] => 7:00 - 18:00, 9:00 - 13:00 ,
[opentimessaturday] =>
[opentimessunday] =>
[pic] =>
[tel] => 0241 9609790
[fax] =>
[mail] =>
[web] =>
[zugriffe] => 13
[breite] => 50.7982
[laenge] => 6.10429
)

[Price] => Array
(
[0] => Array
(
[id] => 5
[created] => 2010-11-09 19:58:44
[value] => 1.179
[petrol_id] => 3
[station_id] => 5
[active] => 1
)

)

[Petrol] => Array
(
[0] => Array
(
[id] => 1
[name] => Benzin
)

[1] => Array
(
[id] => 5
[name] => Super Dies
)

)

[Card] => Array
(
[0] => Array
(
[id] => 1
[name] => DKV
)

)

[Creditcard] => Array
(
[0] => Array
(
[id] => 4
[name] => VISA
)

[1] => Array
(
[id] => 1
[name] => Bar
)

)

[Service] => Array
(
[0] => Array
(
[id] => 1
[name] => Imbiss/Shop
)

)

)


Nun zeigt er aber, wie ihr auf ---- sehen könnt bei den gemeldeten Kraftstoffen die ID der Kraftstoffart (Petrol) an, aber ich möchte lieber in der Tabelle dann den Namen stehen haben, z.B. Super, Diesel, etc.

Wie kann ich an diese rankommen?

Wenn ich direkt in den Preis View gehe, wo der Preis liegt, dann ist dort die Krafstoffart aus der Tabelle petrols zusortiert. (---)

Muss ich irgendwo die Abbildungstiefe einstellen für das Array, dass er diesen Punkt weiter untergliedert in noch eine tiefere Tabelle?
Kekskruemel
 
Beiträge: 15
Registriert: Di 16. Nov 2010, 10:45

Re: Im View keinen Zugriff auf gejointe Tabelle

Beitragvon Kekskruemel » Di 16. Nov 2010, 11:05

OK, Problem gelöst:

Lösung ist im Controller:
$this->Station->recursive = 2;
Kekskruemel
 
Beiträge: 15
Registriert: Di 16. Nov 2010, 10:45

Re: Im View keinen Zugriff auf gejointe Tabelle

Beitragvon havanna » Do 18. Nov 2010, 16:13

Ein Tipp: In diesem Zusammenhang solltest du dir das Containable Behavior ansehen: http://book.cakephp.org/de/view/474/Containable

Am Anfang, mit drei Tabellen, ist das noch nicht ganz so wichtig. Wenn aber noch mehr Tabellen in einer Beziehung zueinander stehen kann das dazu führen, dass Cake sonst alle Tabelle joined und die Performance deiner Anwendung ausbremst.

Ciao Thomas
Benutzeravatar
havanna
 
Beiträge: 191
Registriert: Mi 15. Okt 2008, 23:12
Wohnort: Bodman-Ludwigshafen
CakePHP-Version: 1.2.x
OS: WIN


Zurück zu Views

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast