---
title: "Extbase render Partials im Controller mit Ajax"
url: "https://www.typo3.net/d/111072-extbase-render-partials-im-controller-mit-ajax"
source: "typo3.net"
tags: ["Extensions","Entwicklung","Frage"]
created: "2012-06-21"
last_reply: "2012-06-25"
replies: 6
solved: false
page: 1
pages: 1
lang: "de"
---

# Extbase render Partials im Controller mit Ajax

Extensions › Entwicklung · 6 Antworten · gestartet 2012-06-21

## Eröffnungsbeitrag

**deus** · 2012-06-21 · [Beitrag #1](https://www.typo3.net/d/111072-extbase-render-partials-im-controller-mit-ajax/1)

Hallo.
Ich habe folgendes Problem bei meiner Extbase-Extension:
Ich würde gerne bei einem Ajax-Request ein Partial rendern und zurückgeben.
Habs mal so versucht:

```php
$res = t3lib_extMgm::extPath($this->controllerContext->getRequest()->getControllerExtensionKey()) . 'Resources/Private/';
$view->setLayoutRootPath($res);
$view->setPartialRootPath($res . 'Partials/');
			$view->setRenderingContext($this->objectManager->create('Tx_Fluid_Core_Rendering_RenderingContext'));
$view->setControllerContext($this->controllerContext);

$arguments = array();			
$template = $view->renderPartial("DeclineReason/Declinelist", NULL, $arguments);
```

Irgendwie komme ich da nicht auf eine Lösung. Hat jemand von euch eine Idee?

## Antworten

### [#2](https://www.typo3.net/d/111072-extbase-render-partials-im-controller-mit-ajax/2) · aemka · 2012-06-22

Fluid Standalone View

### [#3](https://www.typo3.net/d/111072-extbase-render-partials-im-controller-mit-ajax/3) · deus · 2012-06-25

Hallo aemka.
Vielen Dank für deine Antwort. Habe es jetzt mal so versucht:

im Controller in einer Action habe ich folgenden Code:

```php
$arguments = array();			
			
$view = t3lib_div::makeInstance('Tx_Fluid_View_StandaloneView');
$res = t3lib_extMgm::extPath($this->controllerContext->getRequest()->getControllerExtensionKey()) . 'Resources/Private/';
$view->setLayoutRootPath($res);
$view->setPartialRootPath($res . 'Partials/');
			$view->setRenderingContext($this->objectManager->create('Tx_Fluid_Core_Rendering_RenderingContext'));
$view->setControllerContext($this->controllerContext);
$template = $view->renderPartial("DeclineReason/Declinelist", NULL, $arguments);
echo json_encode($template);
```

Leider bekomme ich als Fehlermeldung immer:

```php
<b>Fatal error</b>:  __clone method called on non-object in <b>/usr/www/users/ltcdwu/typo3/sysext/fluid/Classes/View/AbstractTemplateView.php</b> on line <b>312</b><br />
```

Im AbstractTemplateView.php steht an der Zeile 312 folgendes:

```php
$renderingContext = clone $this->getCurrentRenderingContext();
```

Hat noch wer dazu einen Tip oder ein komplettes Beispiel wie der Controller-Code aussehen muss, damit Partials mit Fluid gerendert werden können.

### [#4](https://www.typo3.net/d/111072-extbase-render-partials-im-controller-mit-ajax/4) · aemka · 2012-06-25

Gib doch "Fluid Standalone View" mal in Google ein - gleich der erste Treffer erklärt es im Detail.

### [#5](https://www.typo3.net/d/111072-extbase-render-partials-im-controller-mit-ajax/5) · deus · 2012-06-25

So jetzt habe ich es mal so halbwegs hinbekommen:

```php
$view = t3lib_div::makeInstance('Tx_Fluid_View_StandaloneView');
$res = t3lib_extMgm::extPath($this->controllerContext->getRequest()->getControllerExtensionKey()) . 'Resources/Private/';
$view->setLayoutRootPath($res.'Layouts/');
$view->setTemplatePathAndFilename($res . 'Templates/DeclineReason/Declinelist.html');
$template = $view->render();
```

Ich war immer so auf die Partials versteift.

Jetzt habe ich aber folgendes Problem:
Wenn ich in "Declinelist.html" Viewhelper zB: <f:select ... /> verwenden möchte, bekomme ich folgende Fehlermeldung (zu der ich nichts in google finden kann)
**#1289386765: Could not analyse class:Tx_Fluid_ViewHelpers_SelectViewHelper maybe not loaded or no autoloader?**

Wie kann man den Fluid-Autoloader aktiviren?

### [#6](https://www.typo3.net/d/111072-extbase-render-partials-im-controller-mit-ajax/6) · deus · 2012-06-25

So jetzt klappt alles.
Habe nochmal alle Caches gelöscht und die View nochmal neu erstellt und siehe da, jetzt funktioniert es!

Vielen Dank nochmal aemka!

### [#7](https://www.typo3.net/d/111072-extbase-render-partials-im-controller-mit-ajax/7) · aemka · 2012-06-25

gleiche noch mal deinen COde mit dem ersten Google Treffer zu dem Thema ab - da sind noch Unterschiede.

---

Quelle: „Extbase render Partials im Controller mit Ajax“, typo3.net, https://www.typo3.net/d/111072-extbase-render-partials-im-controller-mit-ajax
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
