- 追加された行はこの色です。
- 削除された行はこの色です。
閲覧総計:&counter(); (本日:&counter(today); 昨日:&counter(yesterday);)
That's an apt answer to an insrnettieg question http://etgtfioa.com [url=http://byjgswkkhy.com]byjgswkkhy[/url] [link=http://rrsrvhoa.com]rrsrvhoa[/link]
CakePHPへの入門の定番中の定番、CakePHP1.2公式マニュアルに掲載されている「ブロ
グチュートリアル」をやってみた。 08/12/30
http://book.cakephp.org/ja/complete/219/CakePHPブログチュートリアル
|&attachref(blog_index画面.JPG,zoom,200x200,button){新しい画像添付};|&attachref(blog_view画面.JPG,zoom,200x200,button){新しい画像添付};|&attachref(blog_edit画面.JPG,zoom,200x200,button){新しい画像添付};|
「ブログチュートリアル」はインターネット上に、ビデオ(全190分)と資料(全88ページ)で詳しく紹介され
ている。このビデオと資料に従いやってみた。
''1.ビデオは6つに別れており、どこで何の説明をしているのかわからなかったので、''
''時間と対応資料ページを明記した。''
''2.ビデオで説明されているが、資料ページがない情報を追記した。''
●「ブログチュートリアル」を解説したビデオ 08/08/23
http://d.hatena.ne.jp/i_ogi/20080825/1219671190
●上記ビデオに連動した資料(全88ページ)
http://puyo2.upper.jp/cake/files/20080823cakephphandson_01.pdf
●「ブログチュートリアル」公式マニュアル
http://book.cakephp.org/ja/complete/219/CakePHPブログチュートリアル
(画面右下のオプションで「全てを1ページで」で表示したもの)
&size(18){''【目次】''};(項目をクリックすると飛べます)
#contents
~
*CakePHPハンズオン1 (概要) 25分 資料p.10-21 [#h16adeff]
CakePHPの概要説明ですね。
00:00 p.10 CakePHPとは
04:30 p.15 機能の特徴
10:40 p.16 主な開発者
14:06 p.17 CakePHPの歴史
18:41 p.19 各国でのイベントも活発
23:39 p.21 CakePHPの気持ち
*CakePHPハンズオン2 (インストール) 23分 資料p.22-31 [#ybc883c1]
ブログチュートリアルの始まりです。
↓ビデオのページ
http://d.hatena.ne.jp/i_ogi/20080825/1219671190
00:00 p.24 今回の元ネタ
10.1 CakePHPブログチュートリアル http://book.cakephp.org/ja/complete/219/CakePHPブログチュートリアル
03:40 p.26 ダウンロード
10.1.1 Cakeをダウンロード http://book.cakephp.org/ja/complete/219/CakePHPブログチュートリアル#Cakeをダウンロード-329
04:30-06:40 【実演】Cakeのダウンロード
06:41 p.29 セットアップ
06:54-09:58 【実演・実習】セットアップ
09:58 p.30 CakePHPのディレクトリ構造
18:15 p.31 データベーステーブルの作成
10.1.2 ブログデータベースの作成 http://book.cakephp.org/ja/complete/219/CakePHPブログチュートリアル#ブログデータベースの作成-330
20:00-23:00 【実演】phpMyAdminを使ってのデータベーステーブルの作成
(はまりポイント)phpMyAdminの起動法がわからなかった。
答:http://localhost/phpmyadmin/index.php
&color(crimson){23:00-25:30 (実習の為、画面変更なし、音声なし、2.5分間視聴不要部)};
|&attachref(phpMyAdminトップ画面.JPG,zoom,200x200,button){新しい画像添付};|&attachref(phpMyAdminクエリ実行.JPG,zoom,200x200,button){新しい画像添付};|
*CakePHPハンズオン3 (初期設定) 40分 資料p.32-40 [#wd6db421]
CakePHPの初期設定です。
↓ビデオのページ
http://d.hatena.ne.jp/i_ogi/20080825/1219671190
00:00 p.32 注意
01:00 p.33 設定ファイル(database.php)の作成
10.1.3 Cakeのデータベース設定 http://book.cakephp.org/ja/complete/219/CakePHPブログチュートリアル#Cakeのデータベース設定-331
(はまりポイント)database.php.defaultにはvar $default = array(の
下にvar $test = array(の設定も記述されているが、ここも編集の必要があるのか?
答:$testの所の編集は不要、var $test = array(全部を消去してもOK。
&color(crimson){10:00-13:36 実習の為、3.5分間視聴不要部};
13:36 p.34 追加の設定(mod_rewriteを有効にする)
&color(crimson){16:40-25:55 実習の為、10分間視聴不要部};
25:55 p.37 mod_rewriteなしで動く設定(app/config/core.php)
10.1.5 mod_rewriteについて http://book.cakephp.org/ja/complete/219/CakePHPブログチュートリアル#mod_rewriteについて-333
29:00 p.34 Seculity.saltを変更(app/config/core.php)
10.1.4 追加の設定 http://book.cakephp.org/ja/complete/219/CakePHPブログチュートリアル#追加の設定-332
30:00 p.34 app/temを書き込み可能に
32:00 p.38 基本のコーディング作業
33:00 p.39 Controllerの作成
10.1.7 Postsコントローラの作成 http://book.cakephp.org/ja/complete/219/CakePHPブログチュートリアル#Postsコントローラの作成-335
&color(crimson){36:52-38:00 実習の為、1分間視聴不要部};
38:00 p.39 scafofoldの説明のつづき
*CakePHPハンズオン4 (Model〜View) 50分 資料p.41-51 [#d0425b01]
↓ビデオのページ
http://d.hatena.ne.jp/i_ogi/20080825/1219671190
00:30 p.41 Modelの作成
10.1.6 Postモデルの作成 http://book.cakephp.org/ja/complete/219/CakePHPブログチュートリアル#Postモデルの作成-334
&color(crimson){04:15-05:15 実習の為、1分間視聴不要部};
05:15 p.42 Controllerへのアクションの追加
10.1.7 Postsコントローラの作成 http://book.cakephp.org/ja/complete/219/CakePHPブログチュートリアル#Postsコントローラの作成-335
&attachref(scaffoldを消した時のエラー画面.JPG,zoom,200x200,button){新しい画像添付};
↑scaffoldを消した時のエラー画面
/app/controller/posts_controller.php
<?php
class PostsController extends AppController {
var $name = 'Posts';
//var $scaffold; //不要なので消す
function index() {
echo 'test'; exit;
}
}
?>
http://localhost/cake/posts/
&attachref(posts_controller_test画面.JPG,zoom,200x200,button){新しい画像添付};
↑index()が呼び出され、画面に「test」と表示された。
/app/controller/posts_controller.php
<?php
class PostsController extends AppController {
var $name = 'Posts';
//var $scaffold; //不要なので消す
function index() {
echo 'test'; exit;
}
function hoge() {
echo 'ほげー'; exit;
}
}
?>
http://localhost/cake/posts/hoge
&attachref(posts_controller_hoge画面.JPG,zoom,200x200,button){新しい画像添付};
↑hoge()が呼び出され、画面に「ほげー」と表示された。
http://localhost/cake/prsts/
&attachref(posts_controller_find_all確認画面.JPG,zoom,200x200,button){新しい画像添付};
↑画面最尾のクエリでSELECT文が動いている事が確認出来ればOK。
14:26 p.43 Viewの作成
19:30 p.45 Viewの作成2
10.1.8 Postビューの作成 http://book.cakephp.org/ja/complete/219/CakePHPブログチュートリアル#Postビューの作成-336
&color(crimson){20:10-26:30 実習の為、6.5分間視聴不要部};
30:00 p.47 Controllerへのviewアクションの追加
10.1.8 Postビューの作成 http://book.cakephp.org/ja/complete/219/CakePHPブログチュートリアル#Postビューの作成-336
&color(crimson){34:50-35:30 実習の為、1分間視聴不要部};
35:30 p.48 Viewの追加 view.ctp
38:30 p.50 Controllerへのaddアクションの追加(抜粋)
10.1.9 記事の追加 http://book.cakephp.org/ja/complete/219/CakePHPブログチュートリアル#記事の追加-337
40:30 p.51 Viewの追加 add.ctp
↓$this->dataの内容確認
/app/controllers/posts_controller.php
<?php
class PostsController extends AppController {
function add() {
var_dump($this->data);
}
}
&attachref($this_dataの内容表示.JPG,zoom,200x200,button){新しい画像添付};
↑view画面で入力したデータが$this->dataに入ってくる。
↓$this->flash()の機能確認
/app/controllers/posts_controller.php
<?php
class PostsController extends AppController {
function add() {
$this->flash('ばいばい','/posts/');
}
}
&attachref(this_flash機能確認.JPG,zoom,200x200,button){新しい画像添付};
↑flash画面にメッセージが表示され、次の画面へのリンクが貼られる。
&color(crimson){48:20-49:27 実習の為、1分間視聴不要部};
*CakePHPハンズオン5 (validate〜ルーティング) 27分 資料p.52-58 [#v26333ba]
↓ビデオのページ
http://d.hatena.ne.jp/i_ogi/20080825/1219671190
00:00 p.52 validateの追加 post.php
10.1.10 データのバリデーション http://book.cakephp.org/ja/complete/219/CakePHPブログチュートリアル#データのバリデーション-338
&color(crimson){05:24-07:30 実習の為、2分間視聴不要部};
09:30 p.54 Controllerへのdeleteアクションの追加(抜粋)
10.1.11 投稿記事の削除 http://book.cakephp.org/ja/complete/219/CakePHPブログチュートリアル#投稿記事の削除-339
12:40 p.56 Controllerへのeditアクションの追加(抜粋)
10.1.12 投稿記事の編集 http://book.cakephp.org/ja/complete/219/CakePHPブログチュートリアル#投稿記事の編集-340
ビデオでは資料p.56のコードと少し異なる形で解説
↓/app/controllers/posts_controller.phpに追加するeditアクションのコード
function edit($id = null) {
$this->Post->id = $id;
if (empty($this->data)) {
$this->data = $this->Post->read();
} else {
if ($this->Post->save($this->data['Post'])) {
$this->flash('Your post has been updated.','/posts');
}
}
$this->render('add');
}
&color(crimson){20:00-22:30 実習の為、2.5分間視聴不要部};
23:00 資料なし ルーティング
10.1.13 ルーティング(Routes) http://book.cakephp.org/ja/view/341
●ルートで表示されるページを変更する方法
/app/config/routes.php
<変更前>
34: Router::connect('/', array('controller' => 'pages', 'action' => 'display', 'home'));
<変更後>
34: Router::connect('/', array('controller' => 'posts', 'action' => 'index', 'home'));
この変更によりhttp://localhost/posts/でindex画面が表示される様になる。
&attachref(,zoom,200x200,button){新しい画像添付};
27:00 終了
*CakePHPハンズオン6 (各種Tips紹介) 23分 資料p.59-88 [#z70e83be]
↓ビデオのページ
http://d.hatena.ne.jp/i_ogi/20080825/1219671190
00:00 p.59 CakePHPのさまざまな機能達
01:00 p.61 【いつでも使える機能】
01:00 p.62 デバッグ機能
05:39 p.63 コードシュガー
09:03 p.65 ログ機能
10:00 p.67 【Controllerで使える機能】
10:15 p.68 レイアウト変更
12:15 p.70 任意のモデルの利用
14:10 p.71 (割愛)セッション
14:30 p.72 【Modelで使える機能】
14:30 p.73 対象テーブル・主キーの指定
15:50 p.75 データ取得
17:05 p.78 【Viewで使える機能】
17:05 p.79 ヘルパー
18:15 p.82 【機能の利用方法の情報源】
公式マニュアル http://book.cakephp.org/ja/
APIドキュメント http://api.cakephp.org/classes.html
|&attachref(CakePHP12公式マニュアルページ画面.JPG,zoom,200x200,button){新しい画像添付};|&attachref(CakePHP_APIdocument画面.JPG,zoom,200x200,button){新しい画像添付};|
21:00 p.84 【チュートリアルを拡張してみる】
21:45 p.86 【まとめ】
09/01/25 count 34
#comment_nospam
#vote(参考になった[3],ふつう[0],参考にならなかった[0])