前回記事(【Laminas】modules.config.phpへの記述とルーティングの設定)の続きで、
コントローラーとビュースクリプトを作ります!
コントローラーを作る
AlbumController.phpを作ります。
場所は、
laminas-mvc-tutorials/module/Album/src/Controller/AlbumController.php
です。
記述内容は、
AlbumController.php
<?php
namespace Album\Controller;
use Laminas\Mvc\Controller\AbstractActionController;
use Laminas\View\Model\ViewModel;
class AlbumController extends AbstractActionController
{
public function indexAction()
{
}
public function addAction()
{
}
public function editAction()
{
}
public function deleteAction()
{
}
}
と記述します。内容の説明をしていきます。
①コントローラー名について
Laminasで使うコントローラー名は、AlbumController.phpのように、
{コントローラー名}Controller.phpという形にします。頭文字は大文字です!
②コントローラークラスについて
AbstractActionControllerクラスをextendsしてAlbumControllerを実装します。
Laminasで提供されるコントローラークラスは、
①AbstractActionController
②AbstractRestfulController
の2種類のようですが、今回はRestfulではないので、AbstractActionControllerを使います。
③アクションメソッドについて
名前の付け方は、{アクション名}Action()で、頭文字は小文字になるので注意してくださいね!
今回は、
1、indexAction() =>デフォルトのページを表示するアクションメソッド
2、addAction() =>データを追加するページを表示するアクションメソッド
3、editAction() =>データを編集するページを表示するアクションメソッド
4、deleteAction() =>データを削除するページを表示するアクションメソッド
の4つを作ります。これらは行いたいアクションに合わせた名前をつけてください。
それぞれのメソッド内にmodelファイルを通してデータベースに対して、selectやinsert、update、そしてdeleteを行う内容のコードと、それらをブラウザ上に表示するコードを記述していきます。
④ViewModelクラスについて
ViewModelは、ビュースクリプトに対して、配列でブラウザ表示するデータを渡します。
記述方法は、例えば、indexAction()内だと
public function indexAction()
{
return new ViewModel([ 'test' => $test ]);
}
のような記述になります。具体的な説明は、実際にビュースクリプトに記述するときにお伝えします。
ビュースクリプトを作る
ここからは、ブラウザに表示するためのスクリプトを書いていきます。
ビュースクリプトの位置は、
Album
├── config
│ └── module.config.php
├── src
│ ├── Controller
│ │ └── AlbumController.php
│ ├── Form
│ ├── Model
│ └── Module.php
└── view
└── album
└── album
├── add.phtml
├── delete.phtml
├── edit.phtml
└── index.phtml
空のファイル、add.phtml、delete.phtml、edit.phtml、index.phtmlを作りましょう!
今回はここまでです。お疲れ様でした!
次は、データベースとモデルを作っていきます!
コメント