いっつもオレオレフレームワークで開発していたので、「そろそろ複数人数開発なんかが出てきたら、チョベリバだなー」なんて思い、ふと毛嫌いしていたフレームワークを触ってみました。
私が関わる制作って、どちらかというと静的コンテンツの一部にシステムがあったりとか、ページ数もそんなに多くないとか、そもそもコーダーさんはDreamweaverとかで制作するので、DocumentRoot以下にHTML関連のファイル(ビュー)を一式置きたいが、そういう感じのサイト制作に適したフレームワークって無いよなー、と思って、自炊しておりました。。。
—–
とはいえ、自炊したものを誰かに強要するもの気が引けるので、ベースとして何かフレームワークを・・・と思ったときに、
CakePHP
が当然候補に挙がってくるわけですが、あの仕様は生理的に受け付けないので却下。
シンプルで早い物が良いよね、ってことで、CodeIgniterを一旦つまみ食いしてみようかな、なんて思います。
■以下、つまみ食いメモ
↓
↓
・ダウンロード(2.0.0 がリリースされた直後のようでした。)
・ドキュメントルート以下にドバっとアップ。出来るだけさりげなく。
・.htaccessに以下を追加
—–
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
—–
・・・ってあるけど、concrete5式の以下のものの方が好みかもしれんですが、どうか?
—–
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
—–
追々、こちらにしても問題無さそうであればこっちに。
・/application/controllers/blog.phpに
—–
class Blog extends Controller{
function index(){
—–
と書いて、http://www.example.com/blog/ とやってみよう!
とあるので、やってみるもエラーに。
どうやらCodeIgniter2.0から、色々と仕様変更されているっぽい。
(PHP5仕様になっていたり、クラス名が変わっていたり。)
/application/controllers/welcome.php を参考にしてみると上手く行った。
—–
class Blog extends CI_Controller{
function __construct(){
parent::__construct();
}
function index(){
echo ‘Hello World!’;
}
}
—–
1系で慣れていた人は、クラス名変更が慣れないとかあるのかもかも?
丁度良いタイミングで勉強し始めた私はラッキーかも?
■まだまだ良く理解出来ていない点が多い中、気になっている点。
・バリデーション(form_validation)関連が英語なので、拡張するか自炊していた物を引っ張ってくるか悩みどころ。
・メール送信が面倒くさいっていうかマルチバイト対応していない???ここはqdmailとか使って自炊した方が良いかもしれない。
・AcriveRecord関連、insertとupdateが別々の関数でなく、1個の関数で処理して欲しいし、余計なパラメータも一緒に渡しても大丈夫なように適切にSQL生成してほしい。(fieldsを見て、等)。この部分をやりたければ、自前で拡張するしかないのかな?
・CodeIgniterのポリシーに反しそうだけれど、やっぱりSmartyは使いたい。どうやらcodeigniter-smartyなんてものがあるみたいなので、後で試してみようそうしよう。
・ちなみに現状、書籍がこれしか無いっぽいです。2年以上前のものなので、そこが不安。