15

以前はほとんど Zend Framework 1 を使用していましたが、CakePHP 2.2 を使用して新しい Web プロジェクトの作業を開始しようとしています。

一目見ただけで、私は CakePHP がモデルと基礎となるデータベース テーブルを処理する方法が本当に気に入っています。特に、1 対多および多対多の関係を最小限の手間ですばやくセットアップすることに関してです。率直に言って、以前の Zend Framework でのやり方と比べると、一風変わったように思えます。

しかし、ここ数年、Zend Framework を使用していたとき、私は Doctrine を使用して、ZF がやや不器用なモデル関係を提供することを検討していました。Doctrine は非常に強力で柔軟性があるように見えました。

新しい CakePHP プロジェクトに深く入り込む前に、新しいフレームワークで Doctrine を使用することを検討すべきでしょうか? CakePHP の組み込み ORM およびデータベース機能と比較して、Doctrine はどのような利点と欠点をもたらしますか?

4

2 に答える 2

14

CakePHP は、全体として使用する場合に最適に機能します。特定のケースでは、必要に応じて Cake の ORM の代わりに Doctrine を使用できますが、cake の多くの機能が失われます。たとえば。FormHelper は、モデルのスキーマを使用してフィールドなどの適切な入力タイプを推測したり、検証が失敗したときにフォームの適切なフィールドの下にエラー メッセージを自動的に表示したりするなど、「魔法のように」多くのことを行います。

あなたがコメントしたように、Doctrine の経験もあまりないので、CakePHP の ORM に固執し、ニーズに合わない場合にのみオプションを探すことをお勧めします。

于 2012-09-21T05:57:42.877 に答える
5

Doctrine と CakePHP の ORM を既に使用している場合は、変更する主な理由に基づいて決定できます。

  • 生産性を向上させるものは何ですか?
  • 保守性を向上させるものは何ですか?
  • 学習曲線を短くするものは何ですか?

個人的には、Doctrine は 1 つの問題に固有のものであるという事実に基づいて選択します。

于 2012-09-19T20:48:07.060 に答える