ublaboo/datagrid Cizí klíč na hodnotu přes dvě tabulky

ondrapech
Člen | 49
+
0
-

Ahoj, dneska jsem začal jednu tabulku předělávat do datagridu, problémem jsou teď u mě cizí klíče, pokud chci nějakou hodnotu přes více tabulek.

public function createComponentOrdersTableGrid($name)
    {
        $grid = new DataGrid($this, $name);

        $orders = $this->ordersModel->getOrders()
            ->where('status !=', 'opportunity');
        if (!$this->user->isInRole('admin') && !$this->user->isInRole('call-center')) {
            $orders->where('dealers_id', $this->dealer->getPrimary());
        }


        $grid->setDataSource($orders);
        $grid->addColumnText('code', 'Číslo objednávky');
        $grid->addColumnDateTime('created', 'Vytvořeno');
        $grid->addColumnText('customers_id', 'Zákazník');
        $grid->addColumnText('customers.company_id', 'IČO');
        $grid->addColumnText('customers.vat_id', 'DIČ');
        $grid->addColumnText('dealers.users.full_name', 'Prodejce');
        $grid->addColumnText('status', 'Stav');
        $grid->addColumnText('total_price', 'Celková cena');
        $grid->addColumnText('points', 'Body');
    }

Všechny klíče mi normálně fungují, dokonce i v tabulce jako např. customers.company_id (u objednávky je uložen zákazník a ten má u sebe sloupec ičo) problém nastává u prodejce, kdy potřebuju jeho jméno (u objednávky je uložen prodejce, u prodejce uživatel a ten má sloupec full_name) tedy: „dealers.users.full_name“.
Nette vrací „Nette\MemberAccessException – Cannot read an undeclared column ‚dealers.users.full_name‘.“

Moc prosím o radu, jak tohle vyřešit? Cizí klíče mám nastavené správně – jinde v nette to funguje.

PHP7.2, Nette 2.4, Datagrid ^5.7.1

A pak ještě jedna věc. Používám novější fa-icons a v datagridu se mi nezobrazují např. ikony u zobrazení/skrývání sloupců, … S tím jste se nesetkali? (datagrid doplňuje fa fa-… a ty novější ikony jsou fas fa-…) něco jsem vyřešil přes template makro {icon} ale ty zaškrtávátka u výběru zobrazených sloupců třeba ne :( a pak taky ikony u tlačítek akcí.

A poslední věc,
Pokud nastavím text filter na sloupec z cizího klíče, např. Ičo v mém případě, tak vyhledávání na něm nefunguje.

Editoval ondrapech (21. 6. 2019 14:28)