[TYPO3-german] extbase 6.0.0 - TranslationHandling
Johannes C. Schulz - EnzephaloN IT-Solutions
info at enzephalon.de
Tue Apr 23 12:05:29 CEST 2013
Hallo nochmals
Nun, für meine Listenansicht funktioniert dies. Doch für die dahinterliegende Detailansicht nicht. Das bisher dort verwendete Übergeben des Objektes von der Listview an den Detailview zeigt den deutschen Datensatz an.
Also habe ich nun eine neue Repository-Methode für die Ansicht eines einzelnen Elementes angelegt und diese in meinem Controller aufgerufen. Doch jetzt zeigt mir der Controller garnix mehr an! Das Objekt was übergeben werden soll ist leer? Da muß jetzt irgendwo ein Fehler sein, aber ich finde ihn einfach nicht:
Repository:
/**
* Show a single Hotel
*/
public function showwithlang($hotel){
$query = $this->createQuery();
if($GLOBALS['TSFE']->sys_language_uid != 0){
$query->getQuerySettings()->setSysLanguageUid(1);
}
$object = $query->matching($query->equals('uid',$hotel))->execute(); //$hotel ist zB 10, also vorhanden
return $object;
}
Controller:
/**
* Displays a Hotel
*/
public function showitemAction(Tx_Enzhotellist_Domain_Model_Hotellist $hotellist) {
$GLOBALS['tx_enzhotellist']['formhandler']['uid'] = $hotellist->getUid();
$this->view->assign('hotel', $this->hotellistRepository->showwithlang($hotellist->getUid()));
}
Debugge ich das SQL in der Typo3Db...php, so sieht das gut aus. Debugge ich {hotel} im Fluid, so ist es leer.
Irgendwas stimmt da in meiner Repository-Methode nicht - sieht jemand den Fehler??
Johannes
-----Ursprüngliche Nachricht-----
Von: typo3-german-bounces at lists.typo3.org [mailto:typo3-german-bounces at lists.typo3.org] Im Auftrag von Domi
Gesendet: Sonntag, 21. April 2013 09:52
An: typo3-german at lists.typo3.org
Betreff: Re: [TYPO3-german] extbase 6.0.0 - TranslationHandling
Hi Johannes
>
> /* Wenn Englisch, Französisch oder Niederländisch, zeige die englischen Inhalte */
> if(t3lib_div::_GP('l') != '0'){
> $query->getQuerySettings()->setRespectSysLanguage(FALSE);
> $langsearch = $query->logicalAnd($query->equals('sys_language_uid',1));
> $constraint[] = $langsearch;
> var_dump($langsearch);
> }
Ich würde mal folgendes versuchen:
if(t3lib_div::_GP('l') != '0'){
$query = $this->createQuery();
$query->getQuerySettings()->setSysLanguageUid(1);
return $query->execute();
}
Der Ansatz mit setRespectSysLanguage(FALSE) wird auf jeden Fall in die Hose gehen, dafür hab ich schon ein Bugreport auf Forge erstellt. Ich hatte ein ähnliches Problem gehabt, dass nach dem 4.7 auf 6.0 Upgrade eine Query nicht mehr lief.
Gruß
Dominic
_______________________________________________
TYPO3-german mailing list
TYPO3-german at lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
_______________________________________________
TYPO3-german mailing list
TYPO3-german at lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
More information about the TYPO3-german
mailing list