TwiGrid – omlouvám se :-(
- uestla
- Backer | 799
Ahoj @PetrHH,
od verze 11.0.0
je implementované history API, k vidění
např. na http://nette-commits.cz/
- GEpic
- Člen | 566
Ahoj, nechtěl jsem psát issue na Githubu, protože nevím jestli je to chtěné nebo nechtěné chování.
Každopádně v tuto chvíli (z důvodu změn v JS assetu) není možné
provést ne-ajaxový požadavek / signál společně s
data-tw-confirm
a signál se prostě provede (což chápu). Toto
dřív fungovalo – používal jsem pro stahování souborů přímo z gridu
+ včetně nějaké akce před tím, která musí být potvrzena.
Editoval GEpic (9. 9. 2017 23:27)
- zapp
- Člen | 32
Ahoj,
mám problémy s implementací gridu. Vše jsem se snažil udělat podle dema,
ale stále mi to píše chybu v construct metodě hlavního gridu.
Call to undefined method Nette\Http\Session::addComponent().
BaseGrid.php
namespace App\Grid;
use App\Model\Db;
use Nette\Http\Session;
use TwiGrid\DataGrid;
abstract class BaseGrid extends DataGrid
{
protected $model;
public function __construct(Session $session, Db $model)
{
parent::__construct($session);
$this->model = $model;
}
protected function build()
{
parent::build();
}
}
AccountsAdminGrid.php
namespace App\Grid;
class AccountsAdminGrid extends BaseGrid
{
protected function build()
{
parent::build();
$this->setPrimaryKey("id");
$this->addColumn("email", "E-mail");
$this->setDataLoader([$this, "dataLoader"]);
}
public function dataLoader(AccountsAdminGrid $grid, array $filters, array $order, $limit, $offset)
{
$data = $this->model->getUsers();
return $data;
}
}
úryvek z AccountsPresenter.php
class AccountsPresenter extends BasePresenter {
/** @var AccountsAdminGrid @inject */
public $accountsAdminGridFactory;
public function createComponentAccountsAdminGrid()
{
return $this->accountsAdminGridFactory;
}
}
V neonu samozřejmě službu zaregistrovanout mám. Nenapadá někoho něco? Děkuji.
Editoval zapp (19. 9. 2017 16:07)
- uestla
- Backer | 799
@zapp Aha, neumím číst :-)
Pro editaci „Edit inline“ buttonu je potřeba bohužel přetížit celý
block row-actions
a upravit tenhle
input. Uznávám, že v tomhle místě granularita šablony není
ideální…
- zapp
- Člen | 32
Ahoj,
znovu prosím o pomoc. Mám grid kategorií s určitým pid. Každému
záznamu bych potřeboval vypsat „subgrid“ příslušných podkategorií.
Díky přetížení bloku body-row
se mi to povedlo, ovšem
nefungují mě řádkové a hromadné akce kvůli nezaregistrovaným
komponentám těch subgrid záznamů. Dá se toto nějak
elegantně řešit?
Editoval zapp (26. 10. 2017 14:50)
- chladekt
- Člen | 10
Rozjiždím TwiGrid pod nette 3.0 a PHP 7.2. Ajaxové tlačítko pro
editaci vyvolává tuto chybu:
Nette\InvalidStateException: Cannot send header after HTTP headers have
been sent
Dostavá se totiž na výstup grid bez vnitřku tbody. Řeším to následující metodou. Nebylo by lepší řešení?
public function render(): void {
if ($this->presenter->isAjax()) {
ob_start();
}
parent::render();
if ($this->presenter->isAjax()) {
ob_end_clean();
}
}