Databáze & ORM spojení tabulek
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- JaroslavRamba
- Člen | 20
Zdravím,
snažím se rozchodit dotazování ORM, ale skončím na chybě: Cannot read an
undeclared column „users“
Dump DB
CREATE TABLE IF NOT EXISTS `comments_blog` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`id_uzivatele` int(11) NOT NULL,
`id_article` int(11) NOT NULL,
`text` varchar(250) CHARACTER SET utf8 COLLATE utf8_czech_ci NOT NULL,
`date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `id_vyrobku` (`id_article`),
KEY `id_uzivatele` (`id_uzivatele`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
ALTER TABLE `comments_blog`
ADD CONSTRAINT `comments_blog_ibfk_1` FOREIGN KEY (`id_uzivatele`) REFERENCES `users` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION;
PHP code
foreach ( $this->context->database->table( 'comments_blog' ) as $comment ) {
echo $comment->users->fb_uid;
}
Díky za rady
- mildhouse
- Člen | 27
Ahoj,
zkus tohle :
foreach ( $this->context->database->table( 'comments_blog' ) as $comment ) {
echo $comment->ref('id_uzivatele')->fb_uid;
}
Kdyby se sloupec ‚id_uzivatele‘ jmenoval ‚users_id‘ tak by ti to fungovalo, jaks to napsal
A nebo :
foreach ( $this->context->database->table( 'comments_blog' )->select('id_uzivatele.fb_uid') as $comment) {
echo $comment->fb_uid;
}
Editoval mildhouse (20. 8. 2013 13:28)