ユーザーがアクセスできるように、drinkという名前で、controllerをつくる。
先日作ったテーブルを中に入れる
設計
今からやることはなんなのかを具体的に文章にして、明確にしておく
まずはどうやってMVCでコードが動くのか、Codeigniterの仕組みを理解するところをやる。
php_practice/app/application/controllersの中身を一通り確認する。
ファイルを全てvimで開く。
モデルからデータを受け取って、ビューがHTMLを生成する流れを実行して確認する。
Codeigniter アプリケーションフローチャート
https://codeigniter.jp/user_guide/3/overview/appflow.html
Codeigniterの処理の流れについて
https://kunitsuji.hatenadiary.org/entry/20080617/1213671478
を読む
Codeigniterのチュートリアルをやってみた
https://it-tech-dm.hatenadiary.org/entry/20091025/1256465675
CodeIgniter 3のディレクトリ構成と動きを確認する
https://www.m0de.ml/c0d3man/posts/oszoeezc1r01vt89jc7z
を実行する
その後、実際に自販機を組み立てていこう。
やることは、大枠からどんどん細かくする
以下が自販機の組み立ての大きなプロセス。
ぺーじをつくる。
データをデバッグできるのでそれをする。
実際にViewが受け渡しをできるか確認する
URLでアクセスできるか確認する
これを粒度どんどん細かくしていくことで、設計が出来上がっていく。
細かくしていく例↓
各ページがURLでアクセスできるようにする
ページごとにViewに必要なデータの取得
Viewでの値の受け渡し
Viewの組み立て
URLでアクセスしてページが設計通りに動いていることを確認
↓
各ページがURLでアクセスできるようにする
Controller(機能)の作成
methodの作成(ページ)
ページごとにViewに必要なデータの取得
DaoをつかったDatabaseアクセス
select文をCodeigniterのActicerecordで取得
Viewでの値の受け渡し
Viewの組み立て
URLでアクセスしてページが設計通りに動いていることを確認
↓
各ページがURLでアクセスできるようにする
Controller(機能)の作製
drink controllerの作製
application/controller/drink,phpを作製する
methodの作製(ページ)
作製されたapplication/controller/drink.phpにmethodを追加していく
indexの追加
publicで作製します
public function index
購入開始のリンクをつける必要がある
(リンクだけなのでViewで対応)
購入済商品一覧
Database (php_practice)にある○○テーブルの○○を参照して一覧で取得する
購入済商品一覧のステータス(飲んだ飲んでない)
Database (php_practice)にある○○テーブルの○○を参照して一覧で取得する
ステータスについては所持しているドリンクに付与する必要がある
public function index()
{
購入済商品一覧
Database (php_practice)にある○○テーブルの○○を参照して一覧で取得する
$result1 = $this->CI->drink_model->get_list();
購入済商品一覧のステータス(飲んだ飲んでない)
Database (php_practice)にある○○テーブルの○○を参照して一覧で取得する
$result2 = $this->Ci->drink_model->get_status();
ステータスについては所持しているドリンクに付与する必要がある
}
drink_model
public function get_list()
{
databaseとhoge tableへ接続をする
$this->CI->load->model('hoge');
select文を発行する
$this->CI->hoge_model0->select();
$this->CI->hoge_model0->get_list();
帰ってきた値を受け取る
$result = $this->CI->hoge_model->query_result();
return $result;
}
public function get_status()
{
}
ページ毎にViewに必要なデータの取得
Daoを使ったDatabaseアクセス
select文をCodeigniterのActicerecordで取得
取得したデータの整形
データが引き出せているかの確認
Viewでの値の受け渡し
ControllerからViewの呼び出し
Viewへの値受け渡し
Viewの組み立て
Controllerから受け渡された値の出力確認
必要箇所への埋込
URLでアクセスしてページが設計通りに動いていることを確認
メッセージ入力
のような感じで。組みまくれ。ひたすらに。細かくしていけ。
上記のように、書いた文章はコメントにし、その下に実際のコードを書いていくことができるので、粒度細かく書いていくことで、そのままコーディングに入ることができるのだ。
modelは先日つくったテーブルごとに作成する
参考資料
読んだものメモ
超絶初心者がCodeIgniterを一から導入やってみました
https://www.alt-plus.jp/archives/1755
Codeigniter アプリケーションフローチャート
https://codeigniter.jp/user_guide/3/overview/appflow.html
Codeigniterの処理の流れについて
https://kunitsuji.hatenadiary.org/entry/20080617/1213671478
Codeigniterのチュートリアルをやってみた
https://it-tech-dm.hatenadiary.org/entry/20091025/1256465675
CodeIgniter 3のディレクトリ構成と動きを確認する
https://www.m0de.ml/c0d3man/posts/oszoeezc1r01vt89jc7z
軽量PHPフレームワーク ‘CodeIgniter’ 徹底ガイド!
http://www.ci-guide.info/
Codeigniterユーザガイド
http://codeigniter.jp/user_guide/3/index.html