Upload
kenichi-inoue
View
140
Download
2
Embed Size (px)
DESCRIPTION
Tech Garden School 2014/10/11
Citation preview
どんな実装方法がありましたか?
(例えば・・・)
1. データベースからデータを取得する際に並べ替える2. データベースからデータを取得した後、Controllerにプログ
ラムを書いて並べ替える3. Viewにデータを渡した後、JavaScriptで並べ替える
答は1つではありません!それぞれにメリット・デメリットがあり、条件に応じてより良い方法を選ぶ必要があります。
リファレンスを見る
自分が使っている技術(Tech Garden Schoolだったら、PHP、CakePHP)のリファレンスを眺めてみる。
その技術で何が出来るのか、何が得意なのかを知っておくと、実装方法を考えるときに自分の持ち玉が増える。
英語の勉強で言えば、自分の知っている単語や熟語を増やすようなもの。
リファレンスを見るコツ
使っている技術のより上位の方から見ていく。
PHP→CakePHPではなく、CakePHP→PHPの順。
上位の技術は、下位の技術の機能を補うように出来ている。(特化させ、より便利に、より多くの機能を)
眺める時は、ネットより本の方がオススメ!
CakePHPのAPIリファレンス
CakePHP 2.x Cookbook (日本語)http://book.cakephp.org/2.0/ja/contributing/documentation.html
CakePHP API (英語)http://api.cakephp.org/2.0/
CakePHPについては、日本語の
リファレンス本を買った方が良いかも・・・。
PHPの関数リファレンス
PHPマニュアル http://php.net/manual/ja/index.php関数リファレンス http://php.net/manual/ja/funcref.php
では、実装だ!
1. まずは、プログラムに直接書いて並べ替えを実現しましょう。a. どのプログラムにどのような記述をすれば良いでしょうか?
CakePHPのリファレンス等で調べてみましょう。
2. 次に、画面から指示を与えて、昇順・降順の切り替えが出来るようにしてみましょう。
<参考>
並べ替えを実現する方法を調べる
例えば、データベースからデータを取得する際に並べ替える方法を選んだとしたら・・・
● 梅のモジュールで、データベースからデータを取得する際にどんなプログラムを書きましたか?
● そこで使っているCakePHPのAPI(関数)について、リファレンスで調べてみましょう。
<参考>
GETパラメータの取得とif文での分岐
$order = $this->request->query[‘order’];if ( $order == ‘asc’ ) { // 昇順でデータを取得する処理
} else { // 降順でデータを取得する処理
}