コントローラーのアクション名に合わせて view を作ることで、そのアクションの際はその view を使うことになりますが、例えば news というアクションで、そのアクションにパラメータ無しでアクセスした際はニュース一覧を表示し、パラメータが入っていればパラメータを元にニュース記事だけのページを作りたい場合に困ります。
今までは view 側に対して現在のステップを変数で渡して HTML の出力を切り替えていましたが、内容が多くなると少し面倒なのでコントローラーの段階で使う view を render メソッドで切り替えましょう。
1 2 3 4 5 6 7 8 9 | function news($id = null) { if(is_null($id) { $this->set('data', 'ニュース一覧'); } else { $this->set('data', 'ニュース個別記事'); $this->render('news-single'); } } |
コメント