Zobrazení vztahu rodič/potomek pomoci optgroup

Zobrazení vztahu rodič/potomek pomoci optgroup
« kdy: 17. 03. 2020, 18:44:55 »
Pro navigaci na strankach bych rad pouzil model uvedeny na (http://mikehillyer.com/articles/managing-hierarchical-data-in-mysql)
vysledkem v databazi je

Kód: [Vybrat]
+----+----------------------+-----+-----+
| id | name                 | lft | rgt |
+----+----------------------+-----+-----+
|  1 | ELECTRONICS          |   1 |  20 |
|  2 | TELEVISIONS          |   2 |   9 |
|  3 | TUBE                 |   3 |   4 |
|  4 | LCD                  |   5 |   6 |
|  5 | PLASMA               |   7 |   8 |
|  6 | PORTABLE ELECTRONICS |  10 |  19 |
|  7 | MP3 PLAYERS          |  11 |  14 |
|  8 | FLASH                |  12 |  13 |
|  9 | CD PLAYERS           |  15 |  16 |
| 10 | 2 WAY RADIOS         |  17 |  18 |                                                                                                                                                                                                   
+----+----------------------+-----+-----+   

Vysledny JSON je nasledujici:

Kód: [Vybrat]

                {
                    "name": "ELECTRONICS",
                    "lft": "1",
                    "rgt": "20"
                },
                {
                    "name": " TELEVISIONS",
                    "lft": "2",
                    "rgt": "9"
                },
                {
                    "name": "  TUBE",
                    "lft": "3",
                    "rgt": "4"
                },
                {
                    "name": "  LCD",
                    "lft": "5",
                    "rgt": "6"
                },
                {
                    "name": "  PLASMA",
                    "lft": "7",
                    "rgt": "8"
                },
                {
                    "name": " PORTABLE ELECTRONICS",
                    "lft": "10",
                    "rgt": "19"
                },
                {
                    "name": "  MP3 PLAYERS",
                    "lft": "11",
                    "rgt": "14"
                },
                {
                    "name": "   FLASH",
                    "lft": "12",
                    "rgt": "13"
                },
                {
                    "name": "  CD PLAYERS",
                    "lft": "15",
                    "rgt": "16"
                },
                {
                    "name": "  2 WAY RADIOS",
                    "lft": "17",
                    "rgt": "18"
                }

Rad bych pomoci select - optgroup zobrazil "mnozinu potomku" kazdeho rodice. Bohuzel si moc nevim rady jak logicky postupovat tak abych do budoucna zobrazil "nekonecny" pocet vnoreni.



« Poslední změna: 17. 03. 2020, 23:05:13 od Petr Krčmář »


Re:Zobrazeni vztahu rodic/potomek pomoci optgroup
« Odpověď #1 kdy: 17. 03. 2020, 19:27:10 »
Snazim se o to v Reactu...

Pomoci ul/li by to vypadalo nejak takto

Kód: [Vybrat]

<ul>ELECTRONICS
<ul>TELEVISIONS
    <li>TUBE</li>
    <li>LCD</li>
    <li>PLASMA</li>
    </ul>
   
    <ul>PORTABLE ELECTRONICS
    <ul>MP3 PLAYERS
        <li>FLASH</li>
    </ul>
        <li>CD PLAYERS</li>
        <li>2 WAY RADIOS </li>
    </ul>
</ul>



Re:Zobrazeni vztahu rodic/potomek pomoci optgroup
« Odpověď #2 kdy: 17. 03. 2020, 19:47:17 »
Na wiki je to heslo na adrese https://en.wikipedia.org/wiki/Nested_set_model

A jak tam pisou, je to urcene pro data, ktere se malo meni. Zmena totiz znamena aktualizaci vsech indexu. Tj. MySQL by to asi jeste zvladla relativne rychle, ale v MVCC databazi (napr. Postgres) by to bylo hodne drahe (a navic jsou v nich lepsi zpusoby prace s rekurzivnim daty).

PS: az po odeslani jsem pochopil, ze se tu neresi ukladani dat, ale jejich zobrazeni .. no, tak nic :)
« Poslední změna: 17. 03. 2020, 19:48:49 od lazywriter »