Einbindung der static_info

  • steffenk steffenk
    Obi-Wan Kenobi
    0 x
    4666 Beiträge
    0 Hilfreiche Beiträge
    15. 03. 2006, 16:42

    Heute ist wieder so ein typischer Problemtag ...

    Ich habe in einer Tabelle den Verweis auf die static_info gesetzt, hier der Ausschnitt aus der tca.php:

    1. "country" => Array (
    2. "exclude" => 0,
    3. "label" => "LLL:EXT:prprojekt/locallang_db.php:tx_prprojekt_customers.country",
    4. "config" => Array (
    5. "type" => "select",
    6. "foreign_table" => "static_countries",
    7. "foreign_table_where" => "ORDER BY static_countries.uid",
    8. "size" => 1,
    9. "minitems" => 0,
    10. "maxitems" => 1,
    11. )
    12. ),

    Zum Abspeichern nimmt er nun die uid.

    In der Extension nutze ich die sr_static_info, um auch die Länder-Auswahl einzubinden, doch da nimmt er das Feld cn_iso_3 als Value:
    [HTML]<option value="AFG">Afghanistan</option>[/HTML]

    erzeugt durch

    1. $markerArray['###COUNTRIES###']=$this->sinfo->buildStaticInfoSelector('COUNTRIES', $this->prefixId.'[cust_country]', '', '', '', 0, 'land', '');

    Wie kann ich ihn dazu bewegen, die uid als Value zu benutzen ?
    bzw wie bekomme ich es hin, das er oben nicht die uid sondern auch cn_iso_3 als Referenz benutzt ? (wahrscheinlich der einzig machbare Weg)
    Ich hoffe, das ist nicht zu speziell und jemand hat sich daran auch schon versucht ...


  • 1
  • steffenk steffenk
    Obi-Wan Kenobi
    0 x
    4666 Beiträge
    0 Hilfreiche Beiträge
    15. 03. 2006, 22:05

    nachdem ich mir den Code von sr_static_info einverleibt habe, gibts keine Möglichkeit das umzustellen - ich hab mir dafür eine Funktion erstellt.

    Trotzdem würde es mich brennend interessieren, ob man irgendwie in der tca.php ein Bezugsfeld für die eingebundene Tabelle einbinden kann oder ist das unausweichlich immer die uid ? Es wird ja auch automatisch ein int-Feld dafür erstellt.

  • 0 x
    64 Beiträge
    0 Hilfreiche Beiträge
    04. 04. 2012, 12:54

    [quote="steffenk"]
    nachdem ich mir den Code von sr_static_info einverleibt habe, gibts keine Möglichkeit das umzustellen - ich hab mir dafür eine Funktion erstellt.
    [/quote]

    Stehe gerade vor demselben Dilemma.
    Werde das jetzt auch angehen müssen.

    [quote="steffenk"]
    Trotzdem würde es mich brennend interessieren, ob man irgendwie in der tca.php ein Bezugsfeld für die eingebundene Tabelle einbinden kann oder ist das unausweichlich immer die uid ? Es wird ja auch automatisch ein int-Feld dafür erstellt.
    [/quote]

    Meines Erachtens ist die uid für die build-Funktion besser, das erzeugt dann systemweite Konsistenz.
    Hast du das als Bug / Feature Request schon in Forge eingetragen?

    Hat sonst noch jemand eine gute Lösung?

  • Gernott Gernott
    Jedi-Meister
    0 x
    271 Beiträge
    3 Hilfreiche Beiträge
    04. 08. 2012, 08:51

    Habe das gleiche Problem.
    Ich habe meine Ext. bereits fertig und die Länder-Selectboxen händisch generiert. Erst jetzt bin ich auf die geniale Funktion gestoßen. Hätte es mir deutlich vereinfacht. Und jetzt stehe ich beim Problem mit der Mehrsprachigkeit an (was diese Funktion souverän lösen wurde), kann sie aber nicht verwenden, da die DB fertig ist und mit den IDs arbeitet *grmpf*.

    Bin also sehr Dankbar wenn Ihr eine Lösung habt und hier postet :-)

  • 1