Jak přizpůsobit tabulky dat správce Bootstrap?
(seznamy k přečtení)

Datové tabulky Bootstrap Admin lze upravit pomocí jejich hlavní třídy PHP a šablony TWIG, která je k dispozici ve složce admin.


Organizace souborů týkajících se tabulek s údaji pro správce

Při vytváření datové tabulky z generátoru CRUD se vygeneruje několik souborů:

/admin/class/crud/Table.php
Hlavní třída PHP
/admin/templates/table.html
Šablona HTML TWIG
/admin/crud-data/table-filter-data.json
Filtry použité k filtrování záznamů, pokud existují.
/admin/crud-data/table-select-data.json
Vyberte konfiguraci rozevíracích oken, pokud existují

kde tabulka je tabulka, kterou chcete upravit.

Tyto dva soubory JSON používá interní engine PHPCG k sestavení filtrů datového seznamu nebo k výběru dat.
Považujte je za soukromé soubory CORE a neupravujte je.

Soubory, které nás zde zajímají, jsou třída PHP a šablona HTML TWIG.

Hlavní třída PHP

Hlavní třída PHP provede dotaz SQL do databáze a načte záznamy z tabulky.

Rovněž načte záznamy z relačních tabulek, pokud mají být zobrazeny v datové tabulce.

Pole a hodnoty se zaznamenávají jako atributy objektu ve smyčce, která prochází záznamy:

if (!empty($this->records_count)) {
    while ($row = $db->fetch()) {
        $this->pk[] = $row->$primary_key;
        $this->my_field[]= $row->my_field;
        // ...
    }
}

Každý $řádek-> je hodnota, která se zobrazí v tabulce Data.

Pokud je chcete například změnit, můžete použít libovolnou funkci:

$this->my_field[]= strtolower($row->my_field); // to lowercase
if (!empty($row->my_field)) {
    $this->my_field[]= 'Yes';
} else {
    $this->my_field[]= 'No';
}

Šablona HTML TWIG

Šablona TWIG HTML načte hodnoty z hlavní třídy PHP a vytvoří datovou tabulku HTML.

Snadno můžete upravit jakoukoli část šablony, zejména prvky tabulky <th></th> a <td></td>.

Hodnoty s kódem HTML

Často se stává, že je uložen obsah HTML, který se upravuje například pomocí RTE (TinyMce).

Šablona TWIG ve výchozím nastavení zobrazuje značky HTML, zatímco vy chcete zobrazit obsah HTML.

Za tímto účelem upravíme šablonu TWIG a použijeme filtr TWIG "raw":

<td>{{ object.last_name[ loop.index0 ]|raw }}</td>

Příklad přizpůsobení s odkazem na veřejné webové stránky

Při sestavování seznamu READ aktivujte v generátoru tlačítko Otevřít URL.
Tím se na panelu správce přidá ke každému záznamu seznamu ikona odkazu .

Odkaz směřuje na kořen domény, chceme tento odkaz změnit tak, aby vedl na příslušné stránky jednotlivých záznamů na veřejném webu. Zde je návod, jak toho dosáhnout.

Vezměme si jako příklad tabulku aktérů, řekněme, že každý záznam musí otevřít stránku https://www.my-website.com/actor-x.php, kde x je index.

  1. V editoru kódu otevřete soubor admin/templates/actor.html.
  2. Najděte v šabloně odkaz na otevřít url, který by měl vypadat takto:
    <td> <a href="{{ constant('BASE_URL') }}" rel="noindex" data-delay="500" data-tooltip="{{ constant('')OPEN_URL') }}" target="_blank"><span class="{{ constant('ICON_NEW_TAB') }} text-center"></span></a> </td>
  3. Tento odkaz vás prozatím přenese na domovskou stránku. Aby odkazoval na stránku aktéra, musíte upravit adresu URL (href) a přidat index aktuálního záznamu
    :<td> <a href="{{ constant('BASE_URL') }}/aktor-{{ objekt.pk[loop.index0] }}.php" rel="noindex" data-delay="500" data-tooltip="{{ constant('OPEN_URL') }}" target="_blank"><span class="{{ constant('ICON_NEW_TAB') }} text-center"></span></a> </td>

    Zde používáme primární klíč: {{ object.pk[loop.index0] }}.

    Pochází z objektu Actor v admin/class/crud/Actor.php, který byl předán šabloně TWIG.

Jak zachovat změny, pokud datové tabulky přestavíte?

Pokud po provedení změn v administračních souborech vygenerovaných programem PHPGC přegenerujete seznam READ, budou tyto změny přepsány.

Automatické zálohování souborů správce

Aby nedošlo ke ztrátě dat:

Při generování souborů panelu správce se stávající soubory uloží do záložní složky generátoru: /generator/backup-files/.

Nástroj pro porovnávání souborů

Nástroj pro porovnání generátorů umožňuje:

  • porovnat uložené verze s nově vygenerovanými verzemi
  • sloučení obou dostupných verzí výběrem částí kódu, které chcete zachovat, ve dvou levých/pravých panelech.

Předpoklady

Chcete-li přizpůsobit datové tabulky správce Bootstrap pomocí PHPCG, musíte předem:

Hlavní stránka výukového programu PHP CRUD