[TYPO3-german] extase tt_address

Christian Tauscher christian.tauscher at media-distillery.de
Fri Mar 27 12:44:27 CET 2015


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.





More information about the TYPO3-german mailing list