私は映画を仕事しています&映画館の上映会のガイドです。PHP Yii関係:映画&映画館&展示台
と私はショータイムテーブル(写真#1)と私は時間を持っているテーブル(写真#2)
と、私はこの
シネマ名のような映画のページでは上映時間と映画館のリストを表示する必要があります。 TIME1 - TIME2 - TIME3
グランドシネマ:**午後12時18分 - 午前0時20 - 午後12時22 .... ETS
私のコードは..動作していないと私はこれを表示するために何を書くことができますビューファイル内
Error: The relation "cinemas" in active record class "movie" is not specified correctly: the join table "{{showtime}}" given in the foreign key cannot be found in the database.
作品のモデルには関係があります。
'cinemas' => array(self::MANY_MANY, 'Cinema', '{{showtime}}(movie_id, cinema_id)')
シネマモデルが関係を持っています
'times' => array(self::MANY_MANY, 'Time', '{{showtime}}(cinema_id, time_id)')
シネマモデルは範囲を命名しておく必要があります
public function times_by_movie($movie_id) {
return $this->with(
array(
'times'=>array(
'condition'=>'`movie_id` = :movie_id',
'params' => array(':movie_id'=>$movie_id),
'joinType' => 'INNER JOIN'
)
)
);
}
MoviesController> actionView
public function actionView($id) {
$movie = Movie::model()->with(
array(
'cinemas'=>array(
'scopes'=>array(
'times_by_movie'=>$id
)
)
)
)->findByPk($id);
if (!$movie)
throw new CHttpException(404, 'Movie not found.');
}
ファーストをassosiationテーブルを作成する必要があります。それはあなたのアプリケーションではかなり異なるモデルです。次に同じ命名スタイルに固執しようとするので、あなたのコードは少し読みやすくなります。第三に、慎重にRelational Active Recordチュートリアルを読んでください:http://www.yiiframework.com/doc/guide/1.1/en/database.arr – Johnatan
私はそれを読んでいますが、解決策が必要です。私を助けてください – Abudayah