Zum Inhalt springen

No value found for key "TYPO3\CMS\Fluid\ViewHelpers\FormViewHelper->formObject"

Erstellt am 11. Januar 2013 · 1 Antwort · letzte Antwort am 30. Oktober 2013

Tags: ViewHelper, Frage

NJoyLife ·

Hallo zusammen

In meinem Fluid-Template gibt es eine Checkbox. Diese ist im Modell wie folgt angelegt:

/**
* geschuetzt
*
* @var boolean
*/
protected $geschuetzt = FALSE;

Im Edit-Template wird die Checkbox korrekt dargestellt, im New-Tempkate erscheint die Fehlermeldung:

No value found for key "TYPO3\CMS\Fluid\ViewHelpers\FormViewHelper->formObject"

Wie kann ich Fehlermeldung unterdrückt werden, bzw. was kann ich tun, damit die Checkbox erscheint?

Vielen Dank für jeden Tipp im Voraus und viele Grüße
NJoyLife

harald1972 ·

Hallo auch,

weil ich grad sowas ähnliches bei mir hab, bin ich auf deine Frage hier gestoßen.

Auch wenn ich nicht weiß, ob du das Problem schon beseitigt hast, poste ich hier mal meine Erkenntnis 🙂

Mit dem ExtensionBuilder v2.5.2 in TYPO3 6.1.1 erzeugt mir der Ext.Builder (ich hab einen boolean im Project-Objekt) folgende newAction:

/**
 * action new
 *
 * @param \myVendor\myExt\Domain\Model\Project $newProject
 * @dontvalidate $newProject
 * @return void
 */
public function newAction(\myVendor\myExt\Domain\Model\Project $newProject = NULL) {
  if ($newProject == NULL) { // workaround for fluid bug ##5636 
	$newProject = t3lib_div::makeInstance('');
  }
$this->view->assign('newProject', $newProject);
}

Das ist wohl ein Überbleibsel aus TYPO3 4.7 Zeiten. Denn damit es auch funktioniert muss es so lauten:

$newProject = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('myVendor\myExt\Domain\Model\Project');

Zu beachten ist, der fehlende (führende) Backslash in makeInstance. Das muss hier so sein und anscheinend NUR bei dieser Funktion.

Bei mir ist es allerdings so, daß dieser Boolean bei einem neuen Projekt per default immer auf false ist. Also brauch ich in der new-View auch keine Checkbox dafür. Somit muss ich es auch nicht extra instanziieren.

Gruß zurück