Pripojeni z modelove tridy k DB
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.

- Azim
 - Člen | 41
 
Zdravim vsechny a obracim se na vas s dotazem.
V DB mam tabulku zakazniku, v presenteru se k ni dostavam pres $this->context->createZakaznik()->…, obsah modelu je standardni, tj.
<?php
use Nette\Database\Connection,
    Nette\Database\Table\Selection;
class Zakaznik extends Selection
{
    public function __construct(Connection $connection)
    {
        parent::__construct('zakaznici', $connection);
    }
}
?>
Potrebuji vsak zjistovat, zda ma zakaznik v dany den narozeniny, vytvoril jsem si teda tridu ModelZakaznik:
<?php
class ModelZakaznik
{
    private $data;
    public function __construct(\Nette\Database\Table\ActiveRow $zakaznik)
    {
	$this->data = $zakaznik;
    }
    public function __get($name)
    {
	return $this->data->$name;
    }
    public function __set($name, $value) {
	$this->data->$name = $value;
    }
    public function maNarozeniny()
    {
	...
	}
}
?>
Vse funguje jak ma, instance teto tridy tvorim takto
<?php
$tmp = $this->context->createZakaznik()->get(id);
$zakaznik = new ModelZakaznik($tmp);
?>
Problem nastava, kdyz chci tridu ModelZakaznik doplnit o zjistovani, kdy ma
zakaznik svatek. Svatky mam ulozene v DB a nevim, jak k ni z teto tridy
pristoupit.
Dekuji za precteni a rady.

- Filip Procházka
 - Moderator | 4668
 
Ne, ne, ne! Prosím, ne! Přečti si nejprve nový nový quickstart, kde je lepší způsob jak pracovat s modelem nad databází.