---
title: "eigener ActionController und Inhalte in Tabelle schreiben"
url: "https://www.typo3.net/d/117778-eigener-actioncontroller-und-inhalte-in-tabelle-schreiben"
source: "typo3.net"
tags: ["Extensions","Extbase","Frage","TYPO3 6.x"]
created: "2014-03-31"
last_reply: "2014-04-01"
replies: 2
solved: true
page: 1
pages: 1
lang: "de"
---

# eigener ActionController und Inhalte in Tabelle schreiben

Extensions › Extbase · 2 Antworten · gelöst · gestartet 2014-03-31

## Frage

**HH** · 2014-03-31 · [Beitrag #1](https://www.typo3.net/d/117778-eigener-actioncontroller-und-inhalte-in-tabelle-schreiben/1)

Hallo,
ich habe in einer Testextension mal eine eigene Action erstellt,
Ich möchte im Frontend nur auf einen link "Fehlanzeige" klicken, dann sollen automatisch bestimmte Daten in der Datenbank gespeichert werden. Z.B als Anezeigentext "Fehlanzeige" als Datum "2014" usw...

Das funktioniert perfekt wenn es sich dabei um "properties" der Klasse handelt.
Befinden sich innerhalb der Tabelle auch Felder als Relation, zum Beispiel zu "Kategorien" oder zu den FeUsern funktioniert das leider nicht.
Ich bekomme eine Fehlermeldung: Fatal Error: Argument 1 passed to HH\TestAnzeigen\Domain\Model\Anzeigen::setKategorie() must be an instance of HH\T.......

Ich will ja gar keine neue Instanz der Klasse Kategorie erzeigen, ich will lediglich meiner Anzeigenklasse einen Eintrag hinzufügen.

```php
	public function fehlanzeigeAction(\HH\TestAnzeigen\Domain\Model\Anzeigen $fehlAnzeigen = NULL) {
		$fehlAnzeige = new \HH\TestAnzeigen\Domain\Model\Anzeigen;
		$fehlAnzeige->setAnzeigenText('Fehlanzeige');
		$fehlAnzeige->setKategorie(1);
		//Jahreszahl ermitteln und an das Formular übergeben
		$year = date('Y');
		$fehlAnzeige->setJahr($year);
		
		
		$this->anzeigenRepository->add($fehlAnzeige);
		$this->flashMessageContainer->add('Fehlanzeige geschalten!');
		$this->redirect('list');
	}
```

Wo ist der Denkfehler?
Danke!!!!!

## Beste Antwort

**HH** · 2014-04-01 · [Beitrag #3](https://www.typo3.net/d/117778-eigener-actioncontroller-und-inhalte-in-tabelle-schreiben/3)

Danke für die Antwort,
habs jetzt am Beispiel der FrontedUser so gemacht:

```php
//UID des aktuelle feUsers
$myuid = $GLOBALS['TSFE']->fe_user->user['uid'];
$user = $this->benutzerRepository->findByUid ($myuid);
$fehlAnzeige->setBenutzer($user);
```

Bei den Kategorien geht das genauso, ich möchte ja keine neue Kategorie erzeugen, sondern auf eine bestehendes (Model) zurückgreifen. Also benutz ich das KategorieRepository.

Ich dachte ich könnte in meine Anzeigen einfach die entsprechenden Einträge eintragen, ohne ein echtes Model zu erzeugen. Ist wahrscheinlich unsauber......
Danke nochmals!

## Antworten

### [#2](https://www.typo3.net/d/117778-eigener-actioncontroller-und-inhalte-in-tabelle-schreiben/2) · Schweriner · 2014-04-01

Offenbar erwartet setKategorie keine Zahl als Parameter sondern ein echtes Model vom Typ Kategorie. Einen solchen musst Du zuvor instanzieren und der Funktion übergeben. Zum Speichern ist nicht der add Funktion möglicherweise noch ein Add auf das Repository anzuwenden:

$this->anzeigenRepository->update($fehlAnzeige);

### [#3](https://www.typo3.net/d/117778-eigener-actioncontroller-und-inhalte-in-tabelle-schreiben/3) · HH · 2014-04-01 · Beste Antwort

(Text siehe oben unter „Beste Antwort“.)

---

Quelle: „eigener ActionController und Inhalte in Tabelle schreiben“, typo3.net, https://www.typo3.net/d/117778-eigener-actioncontroller-und-inhalte-in-tabelle-schreiben
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
