Empfehlungen: Erweiterte Suche

ajax Layout rendert leeres View

Ausgabedaten formatieren und darstellen

ajax Layout rendert leeres View

Beitragvon hassliebe » Mo 31. Mai 2010, 19:31

Hallo,

ich habe ein ajax-artiges Image Upload gebastelt. Bekanntlich geht das mit JS nicht direkt, so dass trotzdem ein normales POST gemacht werden muss, um die Bilddaten tatsächlich zum Server zu übertragen. Das bedeutet, CakePHP rendert das View der Controllermethode nicht automatisch in ein leeres Layout.

Hier das Layout (mit Smarty):
Code: Alles auswählen

<img src="{$var}" alt="no image"/>
 

Nun zum Controller.
Code: Alles auswählen

$this->set('var', $var);
$this->render('../elements/ajaxUploadImg');
 

Das bringt zwar das richtige Ergebnis, nämlich das HTML Markup für das geuploadete Bild, allerdings im default Layout. Ich brauche aber nur den Output von $var. Kein Problem möchte man meinen - einfach:
Code: Alles auswählen

$this->layout('ajax');
$this->set('var', $var);
$this->render('../elements/ajaxUploadImg');
 

Aber so rendert CakePHP gar nichts. Ich bekomme einen leeren Response im Browser und keinerlei Fehlermeldungen.

Folgendes hilt auch nichts:
Code: Alles auswählen

$this->set('var', $var);
$this->render('../elements/ajaxUploadImg', NULL, NULL);
 


Hat jemand eine Idee, wie ich CakePHP dazu bringe nur $var im View zu rendern?

edit:
Wer lesen kann ist klar im Vorteil! Richtig wäre und ist
Code: Alles auswählen

$this->layout = 'ajax';
$this->set('var', $var);
$this->render('../elements/ajaxUploadImg');
 
hassliebe
 
Beiträge: 1
Registriert: Mo 31. Mai 2010, 19:05
CakePHP-Version: 1.2.1

Zurück zu Views

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste