Am 25.03.2015 um 09:21 schrieb Mikel:
Ein Underscore im Namen des Properties spricht eigentlich gegen die
Namenskonvention von Extbase
Der Tipp war ganz Hilfreich.
Und ich bekomm sogar einen Output.
Ich hab dann mal weiter dran rumgeschraubt und es klappt ganz gut.
Aber irgendwas sagte mir: Das ist irgendein chache der dir was vorgaukelt...
Also erst mal das TYPOscript das Tabel-Mapping übernimmt rausgelöscht.
-> FE verreckt, OK
TYPOScript wieder rein, aber jetz mal
config.tx_extbase.persistence.classes.Tmd\Screenprinting\Domain\Model\Address.mapping.columns.firstName
= first_Name
getauscht gegen
config.tx_extbase.persistence.classes.Tmd\Screenprinting\Domain\Model\Address.mapping.columns.firstName
= city
Erwartet wird also das statt dem vorname die Stadt ausgegeben wird.
Da steht aber noch immer der Vorname!
Also mal die ganze mappng geschichte killen
config.tx_ex...ping.columns >
Erwartet: Keine Ausgabe, leere Felder
Resultat: Wie gehabt. Name -> Name, firstName -> Vorname, lastName ->
Nachname, city -> Stadt u.s.w.
Cache? Geleert, gelöscht, vernichtet. Hab sogar per phpMyAdmin alle
CacheTabellen mittels TRUNCATE gelöscht, ein 'rm -R typo3temp/Cache/*'
mach ich ja schon fast im Schlafe.
-> TYPO3 vollkommen unbeeindruckt.
Der Output steht immer noch wie eine 1.
Was mach ich also falsch?
AdressController.php:
---------------------
<?php
namespace Tmd\Screenprinting\Controller;
/**
* PrintitemController
*/
class AddressController extends
\TYPO3\CMS\Extbase\Mvc\Controller\ActionController {
/**
*addressRepository
*
* @var \Tmd\Screenprinting\Domain\Repository\AddressRepository
* @inject
*/
protected $addressRepository = NULL;
/**
* action list
*
* @return void
*/
public function listAction() {
$addresses = $this->addressRepository->findAll();
$this->view->assign('addresses', $addresses);
}
}
Model/Address.php
-----------------
<?php
namespace Tmd\Screenprinting\Domain\Model;
class Address extends \TYPO3\CMS\Extbase\DomainObject\AbstractEntity {
/**
* name
* @var string
*/
protected $name = '';
/**
* first_name
* @var string
* @ v a lidate NotEmpty
*/
protected $firstName = '';
/**
* middle_name
* @var string
*/
protected $middleName = '';
.... alle Tabellen felder durch, auch die Getter/Setter:
/**
* @return string $string
*/
public function getName() {
return $this->name;
}
/**
* @param string $name
* @return void
*/
public function setName($string) {
$this->name = $string;
}
....
}
Domain/Repository/AddressRepository.php
---------------------------------------
<?php
namespace Tmd\Screenprinting\Domain\Repository;
/**
* The repository for Address
*/
class AddressRepository extends \TYPO3\CMS\Extbase\Persistence\Repository {}
Templates/Partials etc. spar ich mir mal. Offensichtlich klappt das ja
prinzipiell.
TYPOScript:
-----------
config.tx_extbase.persistence {
storagePid = 67
classes {
Tmd\Screenprinting\Domain\Model\Address {
mapping {
tableName = tt_address
recordType = Tx_Screenprinting_Domain_Model_Address
columns {
gender.mapOnProperty = gender
... mapping alle Felder
ExtBaseName.mapOnProperty = Tabellen Feld
Frage hierzu
-----------
classes.NameSpaceName: NameSpace korrekt
mapping.tableName = tt_adress : Das ist ursprungstabelle?
mapping.colums: korrekt so?
Um weitere verwirrung zu stiften hab ich die EXT mal in einem anderen
Projekt installiert. tt_address dazu, datensatz angelegt.
TS übernommen.
Jetzt ratet mal was icm FE zu sehen ist?
exec_SELECTquery
caller TYPO3\CMS\Core\Database\DatabaseConnection::exec_SELECTquery
ERROR Table 'test.tx_screenprinting_domain_model_address' doesn't exist
lastBuiltQuery SELECT COUNT(*) FROM
tx_screenprinting_domain_model_address WHERE 1=1
Das tupferlgleiche Setup wie im anderen Projekt vorher.
.....
Wer weiß rat.
Danke,
Christian.
_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german