problém s podmínkou where u nette\database
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- kovarik.t
- Člen | 18
Ahoj, mám problém s podmínkou where při výběru z databáze
(Nette\Database) jde o metodu „findbylink“, i když do ní natvrdo dám
where(„link“, „nejaky-link“) (link jinak načítám z databáze) tak
laděnka ukáže v query WHERE (link
= ?). Nějak s tim už
chvilku bojuju a nevim kde je pes zakopanej. Díky za odpovědi.
namespace Todo;
use Nette;
abstract class Repository extends Nette\Object
{
/** @var Nette\Database\Connection */
protected $connection;
public function __construct(Nette\Database\Connection $db)
{
$this->connection = $db;
}
protected function getTable()
{
// název tabulky odvodíme z názvu třídy (portfolioRepository)
preg_match('#(\w+)Repository$#', get_class($this), $m);
return $this->connection->table(lcfirst($m[1]));
}
public function findByLink($link)
{
return $this->getTable()->where("link", $link)->limit(1)->fetch();
}
}
- jiri.pudil
- Nette Blogger | 1032
Vedle toho dotazu bys měl najít parametry, které se do query dosazují za otazníky.