symfonyでの開発を楽にする3つの方法
symfonyの開発は慣れていても思い出すのは大変
symfonyで開発して多少慣れてくると色々と面倒だなぁと思う事があります。その1つが実装方法やサンプルコードを思い返すのに時間が掛かるということです。
今日は、この問題をちょこっと解決できる3つの方法
- installerを利用する
- skeletonを利用する
- generatorを利用する
について紹介したいと思います。
symfony1.4(1.3)で簡単に確認画面を作るアドミンジェネレータ
exDoctrineThemePlusPlugin
すでに議論され尽くしている感がある「確認画面を作る方法」ですが、symfony1.3以降で簡単に確認画面を作成できるテーマを作成しましたので紹介します。
Symfony TemplatingをCakePHPで使ってみる
CakePHPでSymfony Templatingを使ってみる
前回はSymfony Templatingを単独で利用したり、Smartyと連動させてみました。
次に何をしようかと思い、現在のsymfonyで組み込んでみようかと思いましたが、すでにOpenPNEでおなじみの手嶋屋の海老原さんがブログで実践されていました。
というわけで、あのCakePHPのViewとしてSymfony Templatingを使ってみたらどうだろうと思い試してみました。
ただし、CakePHPのViewを完全に置き換えているわけではありません。
とりあえずCakePHPのViewとして動作させることができたという感じです。
Symfony Templatingを使ってみませんか?
Symfony Componentsというのをご存知でしょうか?その名前のとおり、あのPHPのフレームワークで有名なsymfonyに関係するコンポーネントなのですが、symfonyの次期バージョンであるSymfony2で利用されるコアとなる各コンポーネントがライブラリとして公開されています。
近頃、その1つでテンプレート機能部分である Symfony Templatingが公開されましたので、さっそく使ってみました。軽量で柔軟性が高いのでsymfonyを使った事がある人も無い人も簡単に導入する事が可能だと感じました。
そこで、symfonyを使った事がある人も無い人も、「テンプレートエンジンといえばSmartyを使っているけど、PHPってテンプレートエンジンみたいなものだしPHPでテンプレートを書きたい。。」という方まで、ドキュメントとソースを読んで実際に使ってみた例を紹介したいと思います。
DoctrineのfindBy,findOneByにorder byを追加する方法
symfonyではDoctrineが実質的な標準ORMになりました。
まだまだ使いきれていないのですが、機能が豊富にあるため知っているのと知らないのではかなりの差がでてきます。
今回は知っていると得するDoctrineの小ネタです。
Doctrineの特徴としてfindByとfindOneByメソッドがあります。
これらはマジックメソッドで実装されており、カラム名をつけて呼び出すことでより通常のDQLの記述よりも短くすっきりと書くことができます。
DAY10: AJAXでデータ操作
質問の投稿
新しい質問の投稿をAJAXを使ったフォームで実装していきます。
ログインフォームをAJAXで実装しているので基本は同じです。
symfony1.0との違いはやはりsfFormを利用した実装です。
DAY9: ローカルの改善
これまでのおさらい
symfonyで簡単なよくあるAJAXを実装するための関数や機能が用意されているのがわかりました。
また、外部ライブラリがコアのプラグインとして提供されるようになったということがわかりました。
9日目はテキストエリアのMarkdown対応と、ルーティングの変更です。
DAY8: symfonyでAJAXを使う
これまでのおさらい
ようやくそれらしいアプリケーションができてきた感があります。でも、まだ8日目なんですね。。
本日はAJAXをsymfonyでやってみるということです。ではがんばってチュートリアルを実践してみます。
DAY7: モデルとビューの操作
これまでのおさらい
ようやく6日間がおわったというところです。本チュートリアルの目的はsymfony1.0との違いを確認したいということだったのですが、sfFormを使う時点でかなり違ったものになった印象を感じてしまいます。
ただ、フォーム処理を切り分けるという意識がsymfony1.0のころに比べてはっきりしているため以前あったバリデーションをアクションでやりくりしなくてはいけない場合があった違和感はなくなりました。
総合的にみて、symfony1.2のsfFormはWebアプリケーションを開発するためにはフォームヘルパーよりも数段優れている印象を受けます。
Read more
DAY6: セキュリティーとバリデーション
5日目までのaskeet
5日目でsfFormを使ったログインフォームの実装を行いました。
本家では6日目にバリデーションを行うのですが、すでにsfFormで設定を行っているので、確認しつつ進めていきましょう。
