HTTP メソッド名をアクション名の前につけることもできます。以下の例を見て下さい:
class Controller_Example extends Controller
{
public function get_index()
{
// ここは HTTP メソッドが GET の時に呼び出されます
}public function post_index()
{
// ここは HTTP メソッドが POST の時に呼び出されます
}
}
プログラマ専門ニュースとFlex4やFlashBuilderを使った受託開発サイト
HTTP メソッド名をアクション名の前につけることもできます。以下の例を見て下さい:
class Controller_Example extends Controller
{
public function get_index()
{
// ここは HTTP メソッドが GET の時に呼び出されます
}public function post_index()
{
// ここは HTTP メソッドが POST の時に呼び出されます
}
}
コントローラは、URL を通じてアクセス可能なクラスです。リクエストを処理することができます。 コントローラはモデルや他のクラスを呼び出して情報を取得します。最終的に、出力用にビューにすべてを渡します。
www.yoursite.com/example/index という URL がリクエストされた場合、1 番目のセグメント (“example”) は呼び出されるコントローラで、2 番目のセグメント (“index”) は、 呼び出されるそのコントローラのメソッドです。
FuelPHP では、コントローラーは fuel/app/classes/controller ディレクトリに置きます。そして "Controller_" というプレフィックスを付けます。 必要に応じてController class を拡張する必要があります。 以下は “example” コントローラの例です:
class Controller_Example extends Controller { public function action_index() {
$data[‘css’] = Asset::css(array(‘reset.css’,‘960.css’,‘main.css’)); return Response::forge(View::forge(‘welcome/index’));
}
}
URL を通じてリクエストされたメソッドは、”action_” というプレフィックスを付けます。 これは PHP により使用する名前が制限を受けないことを意味します(例: “list” メソッドは許可されていないが、”action_list” は問題ない)。
しかし、これはコントローラに公開メソッドを与えることができることも意味します。 このメソッドは他のクラスからも使用できますが、ルーティングできません。
ベースコントローラは、Controller_Public または Controller_Admin のような共有コントローラです。各コントローラ間でロジックを共有するために使用します。
例えば、Controller_Admin コントローラは login/logout アクションを持つことができます。または dashboard も持ちます。
しかし、ユーザが管理者としてログインされているかどうかをチェックする before() メソッドを含むこともできます。 他のすべてのコントローラは管理者パネルでこれを継承し、自動的に安全になります。
class Controller_Admin extends Controller {
public function before() {
// 管理者かどうかチェック
}
// あなたのメソッド
public function action_index() {
// ダッシュボードをロード
}
public function action_login() {
// ユーザをログイン
}
}
このコードは fuel/app/classes/controller/admin.php にあり、他のコントローラはすべて fuel/app/classes/controller/admin/ にあります。次のようになります:
class Controller_Admin_user extends Controller_Admin {
public function action_index() {
// ダッシュボードをユーザの一覧でオーバーライドする
}
public function action_edit($id) {
// ユーザの編集
}
}
class Controller_Example extends Controller_Welcome {
// あなたのメソッド
}
コントローラを継承することで、簡単にメソッドを共有し、 実際のベースコントローラを生成できます。
このメソッドはコントローラの内部ルーティングを上書きします。
コントローラが読み込まれると、router() メソッドが呼び出されデフォルトメソッドの代わりに、 渡された$method を使用します。 $method に配列として $params で渡すこともできます。before() や after() メソッドは期待したとおりに動作します。
before() メソッドは、コントローラのメソッドが呼び出される時に、その手前で何らかの処理をしたいときに使用します。 コントローラが URL から適切なメソッドを選びそれを呼び出す前にこのメソッドは呼ばれます。 このメソッドをルーティングの目的のために使用してはいけません。 そのためには router を使用して下さい。
このメソッドは、コントローラが2番目のパラメータを指定しない場合に呼び出されます。
上記の例では、
www.yoursite.com/example/index は、
www.yoursite.com/example と同じになります。
各コマンドは通常のものと短縮形がありどちらを使って頂いても同じです。例えばコマンドラインツールを終了するには「quit」と入力して頂いても「¥q」と入力しても同じです。
mysql> quit
mysql> ¥q
■データベース一覧を取得
MySQL に存在するデータベースの一覧を表示するには、SQL の SHOW 文を使用します。
使用例
SHOW DATABASES
↓
一覧表示
use aaadb;
↓
データベース選択完了
↓
show tables;
↓
テーブル一覧表示
↓
show * from
■テーブルのカラム一覧を表示する
DESCRIBE テーブル名;
http://momoya.me.land.to/?pid=146
mysql> show columns from <テーブル名>;
■テーブルにカラムを追加する
alter table <テーブル名> add <カラム名> <設定>
例)alter table personal add address varchar(20);
■カラムを削除する
ALTER TABLE <テーブル名> DROP COLUMN <カラム名>;
SQL文を入力する時は次のように行います。
mysql> SQL文;
SQL文を入力する時は最後にセミコロン(;)でEnterキーを押して実行して下さい。SQL文が実行されます。
viの起動 | ||
---|---|---|
1 | vi ファイル | ファイルを開く |
2 | vi -r ファイル | 強制終了後のバックアップから、ファイルを復元して開く |
モード | ||
3 | i | 挿入モードで入力する |
4 | O・o | 上・下に1行追加して、挿入モードで入力する |
5 | esc | コマンドモードへ移行する |
保存・終了 | ||
6 | :w+Enter | 保存する |
7 | :q!+Enter | 保存せずに終了する |
8 | ZZ | 変更があれば、保存して終了する(変更無しなら、保存せず終了のみ) |
カーソル移動 | ||
9 | w・e・b | カーソルを単語単位で移動する(次の先頭・次の末尾・前の先頭) |
10 | W・E・B | カーソルをスペース区切り単位で移動する(次の先頭・次の末尾・前の先頭) |
11 | 0・^・$ | カーソルを行頭・空白以外の行頭・行末へ移動する |
12 | Enter | 次の行の先頭へ移動する |
13 | {・} | 「空行」区切りで移動する |
14 | (・) | 「空行」か「ピリオド& スペース」区切りで移動する |
15 | [ [・] ] | 「{」区切りで移動する |
16 | ctrl-f・ctrl-b | 1ページ上・下に移動する |
17 | ctrl-u・ctrl-d | 半ページ上・下に移動する |
18 | H・M・L | 画面(表示領域)の上・中央・下へ移動する |
19 | gg・G | ファイルの先頭・末尾へ移動する |
20 | 行番号 G | 行番号へ移動する |
21 | zz | カーソル位置が中央になるようにスクロールする |
削除・コピー ペースト・インデント |
||
22 | d カーソル移動 | カーソル移動(←・↓・↑・→・w・e・b・0・^・$等)した部分の文字を削除 |
23 | dd | 1行削除 |
24 | D | 行末まで削除 |
25 | y カーソル移動 | カーソル移動(←・↓・↑・→・w・e・b・0・^・$等)した部分の文字をコピー |
26 | yy | 1行コピー |
27 | Y | 1行コピー |
28 | v | 範囲選択を開始する(カーソル移動して範囲を動かす、キャンセルはもう一度v or esc) |
29 | V | 行選択を開始する(カーソル移動して範囲を動かす、キャンセルはもう一度V or esc) |
30 | ctrl-v | 矩形選択を開始する(カーソル移動して範囲を動かす、キャンセルはもう一度ctrl-v or esc) |
31 | gv | 前回選択した範囲をもう一度選択する |
32 | y | 選択した範囲をコピー |
33 | P・p | カーソルの上左・下右にペースト(削除・コピー・カットしたテキストがペースト可能) |
34 | = | 選択範囲のインデントを上の行に合わせる |
マウス | ||
35 | ドラッグ | 範囲選択 |
36 | option-ドラッグ | 矩形選択 |
37 | command-c | マウスで選択した範囲をコピー(コマンドモードのコピーは保持される) |
38 | command-v | command-cに対するペースト |
39 | option-クリック | クリック行に移動する |
取り消し・繰り返し | ||
40 | u | 操作履歴を一つ前に戻す(undo) |
41 | ctrl-r | 操作履歴を一つ次に進める(redo) |
42 | . | 直前の操作を繰り返す |
43 | 数字 コマンド | 数字を付加してコマンドを指定すると、その回数繰り返す |
44 | 例 10l | lを10回実行 = 10文字右へ移動 |
45 | 例 4dd | ddを4回実行 = 4行削除 |
46 | 例 3x | xを3回実行 = 3文字削除 |
47 | 例 2u | uを2回実行 = 操作履歴を2つ前に戻す |
検索 | ||
48 | ∗ | カーソル位置の単語を、文章末尾へ向かって、検索する |
49 | # | カーソル位置の単語を、文章先頭へ向かって、検索する |
50 | / キーワード | キーワード(正規表現も使える)を、文章末尾へ向かって、検索する |
51 | ? キーワード | キーワード(正規表現も使える)を、文章先頭へ向かって、検索する |
52 | n・N | 次の検索キーワードへ・前の検索キーワードへ |
置き換え | (Aには正規表現も使える) | |
53 | :%s/A/B/g+Enter | ファイル全体に対して、すべての A を B に置き換える |
環境設定 | ||
54 | :set all+Enter | すべての環境設定を表示する(q=終了、space・b=1ページ移動、d・u=半ページ移動) |
55 | :set tabstop=8+Enter | タブ幅を8文字に設定する |
56 | :set number+Enter | 行番号を表示する |
57 | :set nonumber+Enter | 行番号を表示しない |
スナップショットを作成する
vagrant snapshot take <スナップショット名>
スナップショットの一覧を出す
vagrant snapshot list
指定したスナップショットの状態に移行する
vagrant snapshot go <スナップショット名>
スナップショットを削除する
vagrant snapshot delete <スナップショット名>
vagrant snapshot backは使ったことが無いのでよく分かりません。
何が便利なのか?
最近話題のChefやPuppet、Ansibleなどの構成管理ツールの実験をするときに各仮想マシンの状態を戻して実験する際に非常に役立ちます。というか無いとやってられません。
複数のスナップショットもこのpluginで作成できるので重宝してます。