[TYPO3-german] Auf Extbase in einer TCA-Klasse korrekt zugreifen?

Stefan Padberg post at bergische-webschmiede.de
Tue Aug 4 14:23:29 CEST 2015


Hallo,

ich habe in einer eigenen Extension eine Klasse (im Verzeichnis
\Classes\Tca), die eine User-Funktion bereitstellt, welche im TCA-Array
aufgerufen wird und im Backend etwas macht.

Jetzt möchte ich in dieser TCA-Klasse auf ein Repository zugreifen, und
das funktioniert nicht.

<?php
namespace SP\Locations\Tca;

/**
 *
 *
 * @package locations
 *
 */
class Geocoordinates {

	/**
	 * countryRepository
	 *
	 * @var \SP\Locations\Domain\Repository\CountryRepository
	 * @inject
	 */
	protected $countryRepository = NULL;

	/**
	 * Get Geocoordinates
	 *
	 * @param array $PA
	 * @return string
	 */
	public function get(array &$PA) {
		$out = array();

		// diese Daten kommen aus dem Backend-Formular:
		$strasse = (string) $PA['row']['street'];
		$plz = (string) $PA['row']['zip'];
		$ort = (string) $PA['row']['city'];
		$countryUid = (array) $PA['row']['country'];

		// das funktioniert nicht:
		$countries = $this->countryRepository->findByUid($countryUid);

		// do something more...
	}
}

?>

die Fehlermeldung lautet:
Call to a member function findByUid() on null

Offensichtlich ist die ganze Klassenstruktur von Extbase nicht bekannt.
Wie muss man das richtig machen?

Beste Grüße
stefan


More information about the TYPO3-german mailing list