FuelPHP勉強会に行ってきた

これに参加してきましたので、そのメモがき。

@omoonさんの発表

東京のphp勉強会LTで発表したinstagramen(github)というサービスを元に解説。

http://docs.fuelphp.com/ ここを元にインストール

このサービスの派生版(例、instagramentaiko , instagramukimuki)を作ろう、というのが今回の勉強会の大まかな流れでした。

コマンドでもいいけど、zipをDLして解凍でもいけます。

viewsのファイルが拡張子phpやけど、テンプレートも使える。

  • ディレクトリの構成

  • ルーティング

この辺は、ドキュメントにだいたい書いてるそうです。

  • コンフィグで結構何でもいじれて、phpの配列で書いてる

  • tasksディレクトリにコマンドを作れる。instagramenでの、毎0時にバッジ処理に使ってる。

oil refine Insta:get ‘明太子’

コマンド解説)tasksに作ったInstaクラスのgetメソッドに’明太子’引数を渡して実行

  • modelsディレクトリに作ったclassはオートロードされるので、書いたら使える

  • DBは、CoreのModel_Crudにfindやsaveがある

DB作成デモ

Modelクラスに

$_table_name,$primary_key,$_properties,$_created_at,$_updated_at,などを定義して、テーブル情報を設定する。

チェーンメソッドになってる。

例)Model->forge()->set($data)->save();

pre_find・・・find前に必ず呼ばれるメソッド。モデル内で定義

function pre_find(&$query){
}
pagodabox

pagodaboxというPaaSがFuelPHPをサボートしていて相性がよい

大まかな使い方
  • 新規登録

  • new Appでアプリ追加

  • Empty Repoで空リポジトリ追加

  • instagramxxをgit pushする →自動でデプロイされる!素敵!

その他
  • FuelPHPがデフォルトDevelopment環境なので気をつける

  • Environments Vars というメニューで、サーバ変数設定できる。つまり・・・$_SERVER[‘hogehoge’]が管理画面で設定可能!

pagoda用ターミナルクライアント

これで、tunnelしてローカルからpagodabox上のDBに接続するのですが、私は、以下のエラーが出てしまって断念

% pagoda -a instagramichael tunnel bridgette

** Error:

** Input unrecoginized

** try ‘pagoda -a tunnel ‘

** ie. ‘pagoda -a app tunnel db1’

“マイケル”画像があつまるサービスができるはずだったのに><

他の参加者でサービスできてる方もいました。

まとめ

ほんとに、まとまりなくメモっていきました。

思ったのは、全部ファイルがphpってのが少し驚きました。テンプレートはもちろん、ログファイルもphpで吐かれてたような。。。

で、私が慣れてない名前空間をフル活用してたり、色々と発見の多い勉強会でした。

大村さんありがとう御座いました!

参考

FuelPHPを触ってみて