というわけで、未完成な雰囲気が溢れる symfony-bootstrapper を使って
プロジェクトを始めるまでをまとめます。
一先ず無知なくせに人柱になってみました。こんにちはこんにちは。
良い子の Symfonist のみなさんはドキュメントにあるとおり、 symfony-sandbox を使ったほうが良いです。
さらに、状況は刻々と変化しております。 最新の情報は
こことは別でちゃんと仕入れてください。
—
まず、 symfony-bootstrapper の symfony.phar でプロジェクトを作成します。
この点は、 balibali 先生の言うとおりです。
“これだけだとシンプルすぎて動かないので vendor 作ったり .htaccess 置いたりは必要です”
人のことなので、 vendor/ やら .htaccess やらを用意します。
http://github.com/symfony/symfony-bootstrapper/blob/master/bin/install_vendors.sh
を使うと、 vendor がバッチリ導入できる予感がしますが、そんなワケにもいかないです。
どうも Symfony2 は名前空間を変更したりで、Doctrineなどでやや古いタグにされてしまうと
上手く動かないのです。
やや強引ですが、 git checkout -b v2.0.0-BETA3 2.0.0-BETA3 のように
タグを切り替ている行をコメントアウトしてしまいます。
その後、プロジェクトのディレクトリに移動して、 install_vendors.sh を実行します。
これで、 vendor/ が用意されましたが、まだ動きません。
web/ に .htaccess を用意します。これは symfony1.4 のプロジェクトからコピーでなんとかなります。
問題はここからで、ここで動くと思っていたらやっぱり動きません。
なんでだろう???と探ったところ
app/AppKernel.php の一部を変更する必要があるようです。
public function registerBundleDirs() { return array( 'Application' => __DIR__.'/../src/Application', 'Bundle' => __DIR__.'/../src/Bundle', 'Symfony\\Bundle' => __DIR__.'/../src/vendor/Symfony/src/Symfony/Bundle', ); }
ちょうど、こんな行がありますが、 Symfony\\Bundle のパスは
__DIR__.’/../src/vendor/symfony/src/Symfony/Bundle’
に変えてやります。なぜか大文字と小文字が違うようです。
あとは、 asset(デバックページの画像とか) をちゃんと表示したいので
$ ./app/console web
これで、 web/app_dev.php とかにアクセスすると、なんとか動いている雰囲気を
味わって謎の充実感を得ることが出来ます。
—
なんか面倒なので、公式の言うとおり symfony-sandbox で遊んだほうが良いです。
【追記】 phpmatsuriでkrisに聞いたら、やっぱり現状 sandboxで遊ぶべきということが判明しました。
あとウソチクもあるかもしれないので、ちゃんと公式から出るまで待つべきです。