Eigene Felder werden nicht dargestellt [Gelöst]

  • franzl franzl
    T3PO
    0 x
    10 Beiträge
    0 Hilfreiche Beiträge
    14. 09. 2007, 15:04

    Hallo,

    ich habe die Tabelle von tt_products um drei eigene Felder erweitert und die tca.php und locallang_db.xml wie in [url]http://www.typo3.net/forum/list/list_post//49494/?page=1&sword=tca%20tt_products#pid185520[/url] beschrieben angepasst.
    Weiter habe ich in class.tx_ttproducts_artivle_base.php in der Funktion getItemMarkerArray folgenden Code eingefügt:

    1. $markerArray['###MEINFELD###'] = $row['meinfeld'];

    In der Listenansicht im FE wird der Marker auch ersetzt, aber auch wenn meine Datenfelder Daten enthalten ist der Inhalt nicht zu sehen, sondern der Marker wird durch nichts ersetzt.

    Kann mir jemand sagen, wo ich meine Felder noch integrieren muss?

    Danke,
    Franzl


  • 1
  • franzl franzl
    T3PO
    0 x
    10 Beiträge
    0 Hilfreiche Beiträge
    16. 09. 2007, 16:24

    Hallo,

    ich habe das Problem nun lösen können. Ich glaube zwar nicht, dass es eine elegante Lösung ist, aber sie funktioniert, bis ich weiß, wo ich wirklich schrauben muss:

    In der Klasse view/class.tx_ttproducts_list_view.php

    habe ich in der Methode printview bei Zeile 427 das Array $fieldsArray erweitert, indem ich zunächst ein neues Array erstellt habe, das die Feldnamen meiner Felder enthält und dieses anschließend zu $fieldsArray gemerged habe.

    Vielleicht hilft das ja auch anderen weiter.

    Kennt jemand eine elegantere Lösung?

    franzl


  • 0 x
    04. 12. 2007, 12:35

    Hi franzl,

    arbeite gerade an Version 2.5.3 und habe das gleiche Problem. tt_products setzt für viele DB-Abfragen die Extension "Table Library" ein, u.a. auch in model/class.tx_ttproducts_product.php in Zeile 147ff, Methode get(). Ich habe mir die Table Library noch nicht angeschaut, aber wie es immer so ist, muss ich weiterkommen und deshalb habe ich den Table-Aufruf durch einen "normalen" TYPO3_DB-Aufruf ersetzt: Siehe da, meine Zusatzfelder sind nun drinne!

    1. // Fetching the products
    2. # $res = $this->table->exec_SELECTquery('*', $where);
    3. $res = $TYPO3_DB->exec_SELECTquery('*', 'tt_products', '1=1 AND !deleted AND !hidden AND uid = '.intval($uid));
    4. $row = $TYPO3_DB->sql_fetch_assoc($res);


  • 0 x
    07. 01. 2008, 17:05

    Ok, eine weitaus sinnvoller Methode wäre, dass Unterarray "tableFieldArray" im Objekt $this->table zu ergänzen, ebenfalls in der gleichen Funktion:

    1. $this->table->tableFieldArray['neues_feld'] = array('tt_products' => 'neues_feld');

  • 1