Zum Inhalt springen

Tabelle fe_users in Extension benutzen (Extbase)

Erstellt am 11. Juni 2014 · 2 Antworten · letzte Antwort am 16. März 2016

Tags: Frontend-Benutzer, Frage

mmaxmm ·

Hallo, ich entwickle grade eine Extension und würde nun gerne auf Daten der Tabelle "fe_users" zugreifen. Das es bereits ein Model dazu gibt, benutze ich dieses auch. Dennoch kann ich nicht auf die Daten zugreifen und bekomme immer "Null" zurück. Die Anleitungen im Internet sind leider hauptsächlich für Typo3 Versionen unter 6.2 (also ohne Namespaces).

Ich injecte also das FrontendUserRepository in meinen Controller:

	/**
	 * @var \TYPO3\CMS\Extbase\Domain\Repository\FrontendUserRepository
	 * @inject
	 */
	protected $frontendUserRepository;

Und führe ein Mapping in der setup.txt durch:

	persistence {
		storagePid = {$plugin.tx_mmlicensenumber.persistence.storagePid}
		classes{
			\Mm\MmLicensenumber\Domain\Model\User{
				mapping{
					tableName = fe_users
				}
			}
		}
	}

Meine Vermutung ist, dass etwas mit dem Mapping nicht stimmt. Kann mir da jemand helfen?

mfg

npre ·

hallo,

hast du das problem lösen können? stehe vor dem gleichen problem und komm nicht weiter ...

lg
npre

harald1972 ·

Hallo,

im TCA der Klasse, welchen den user enthält (mehrere müssten auch), sollte sowas stehen:

'user' => Array (
   'config' => Array (
      'type' => 'select',
      'foreign_class' => 'Tx_Extbase_Domain_Model_FrontendUser',
      'foreign_table' => 'fe_users',
      'maxitems' => 1 // nur ein user oder mehr?
      ),
     ),

Evtl. musst du dann hier bei 'foreign_class' die Namespace-Schreibweise angeben.

Im BE musst du auch noch allen Usern, die deine Extension nutzen sollen, mitteilen, daß sie vom Typ 'Tx_Extbase_Domain_Model_FrontendUser' sind. ... steht glaub unter "erweitert"... hab grad kein laufendes System zum Nachschauen :/

Ich hoffe, das hilft.

Gruß
Harald