ActiveRow->sloupecId vrací řádek místo hodnoty sloupce
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- vit.peprnicek
- Člen | 20
Mám dvě tabulky, první odkazuje na druhou pomocí cizího klíče.
Když na načtu řádek z první
($en = ... table('entity')->get(1)
) a chci načíst hodnotu
sloupce ($en->entityTypeId
) načte se místo ní ActiveRow na
řádek na který odkazuje stejně jako bych použil
$en->entityType
.
<?php
$en = $this->context->getService('database')->table('entity')->get(1);
dump($en->entityTypeId);
dump($en->entityType);
?>
čekal jsem že ten první zápis $en->entityTypeId
vrátí id (číslo) ale výsledek je:
Nette\Database\Table\ActiveRow #4240
table private => Nette\Database\Table\Selection #d7b7
data private => array (5)
...
Nette\Database\Table\ActiveRow #4240
table private => Nette\Database\Table\Selection #d7b7
data private => array (5)
...
DB:
CREATE TABLE `entity` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(300) NOT NULL,
`entityTypeID` int(10) unsigned NOT NULL,
PRIMARY KEY (`id`),
KEY `entityTypeID` (`entityTypeID`),
CONSTRAINT `entity_ibfk_1` FOREIGN KEY (`entityTypeID`) REFERENCES `entityType` (`id`)
);
CREATE TABLE `entityType` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(300) NOT NULL,
PRIMARY KEY (`id`)
);
PHP 5.5.9–1ubuntu4.19
Apache/2.4.7 (Ubuntu)
Tracy 2.3.11
Nette Framework 2.3.10 (released on 2016–04–13)
Nějaký nápad co s tím?
- vit.peprnicek
- Člen | 20
David Matějka napsal(a):
entityTypeId vs entityTypeID – v tabulce mas velke D na konci
Taková blbost.. díky.