「はじめに: スケルトン アプリケーション」チュートリアルで ZF2 を学習しています。
新しいテーブル「artists」の「id」に接続された外部キー「artist_id」でテーブル「album」を更新します。
CREATE TABLE `album` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`artist_id` INT(11) NOT NULL,
`title` VARCHAR(100) NOT NULL,
PRIMARY KEY (`id`),
INDEX `FK_album_artists` (`artist_id`),
CONSTRAINT `FK_album_artists` FOREIGN KEY (`artist_id`) REFERENCES `artists` (`id`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB;
CREATE TABLE `artists` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`name` VARCHAR(50) NULL DEFAULT NULL,
PRIMARY KEY (`id`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB;
SQL結合を使用せずにアルバムオブジェクトからアーティストの名前を取得する方法を知りたい.
コントローラ内
// module/Album/src/Album/Controller/AlbumController.php:
// ...
public function indexAction()
{
return new ViewModel(array(
'albums' => $this->getAlbumTable()->fetchAll(),
));
}
// ...
ビューで
// module/Album/view/album/album/index.phtml:
foreach ($this->albums as $album) {
echo "Artist's name : " . $album->getArtist()->name . "<br />";
}
getArtist() メソッドを作成する方法と場所を教えてください。