Contao-Camp 2024
Ergebnis 1 bis 4 von 4

Thema: [Erledigt] Select-Feld in DCA anders sortiert darstellen

  1. #1
    Alter Contao-Hase
    Registriert seit
    20.06.2009.
    Ort
    Graz (Austria)
    Beiträge
    1.455

    Standard [Erledigt] Select-Feld in DCA anders sortiert darstellen

    Hallo,

    Ich habe eine Elterntabelle und eine Kindtabelle. In der Elterntabelle werden die Einträge sortiert und auch dementsprechend im Datenbankfeld "sorting" so gespeichert und auch so im Backend ausgegeben.

    Wie schaffe ich es, dass in der Kindtabelle im Backend im Feldtyp "select" die Einträge auch dementsprechend sortiert angezeigt werden, wie sie eben in der Datenbank stehen? Zur Zeit wird nach dem Namen (title) sortiert.

    LG, Andi
    Geändert von m-werk (09.04.2018 um 10:36 Uhr)
    LG, Andi

  2. #2
    Alter Contao-Hase
    Registriert seit
    20.06.2009.
    Ort
    Graz (Austria)
    Beiträge
    1.455

    Standard

    So, geschafft. Ich hab die Sortierung nun hinbekommen
    LG, Andi

  3. #3
    Contao-Nutzer Avatar von benzin
    Registriert seit
    06.02.2016.
    Ort
    Essen/Düsseldorf, NRW
    Beiträge
    84
    Partner-ID
    11060

    Standard

    Magst du deinen Lösungsweg hier einmal posten? Jemandem in der Zukunft, der mit demselben Problem zu kämpfen hat, wäre damit sehr geholfen

    Grüße
    benzin

  4. #4
    Alter Contao-Hase
    Registriert seit
    20.06.2009.
    Ort
    Graz (Austria)
    Beiträge
    1.455

    Standard

    Ich hab in der Kindtable eine "option_callback" in mein PID eingebaut:

    PHP-Code:
    'pid' => array
            (
                
    'label'      => &$GLOBALS['TL_LANG']['tl_market_course']['pid'],
                
    'inputType'  => 'select',
                
    'exclude'    => true,
                
    'flag'       => 1,
                
    'foreignKey' => 'tl_market_price.title',
                
    'options_callback' => array('tl_market_course''sorting_title_callback'),
                
    'eval'       => array('includeBlankOption'=>true'submitOnChange'=>true'mandatory'=>true'findInSet'=>true'tl_class'=>'w50'),
                
    'sql'        => "int(10) unsigned NOT NULL",
                
    'relation'     => array('type'=>'belongsTo''load'=>'lazy')
            ), 
    Weiters hab ich dann in meiner Class folgendes eingebaut:
    PHP-Code:
        public function sorting_title_callback()
        {
            
    $options = Array();
            
    $result $this->Database->prepare("SELECT id, title, sorting FROM tl_market_price ORDER BY sorting ASC")
                                     ->
    execute();

            while (
    $result && $result->next() )
            {
                
    $options[$result->id] = $result->title;
            }
            return 
    $options;
        } 
    Das war's auch schon.
    LG, Andi

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •