Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
リレーションシップを持つデータベースにオブジェクトを保存する必要がある場合、そのdaoにすべての保存自体を実行させるのか、それとも他のDAOに委任するのか。他のDAOに委任する必要がある場合、それはDAO自体で行う必要がありますか、それとも上のレイヤー(サービスレイヤーなど)で行う必要がありますか?これにはORMを使用しますが、PHPではまだ良いものは何もありません。
答えは所有者次第だと思います。
親が子を所有し、親なしで子を作成する可能性がない場合、それは ParentDao のみであり、ChildDao はまったく存在しないはずです。
親なしで子を作成できる場合は、その CRUD 操作に ChildDao が必要になります。その場合、ParentDao が ChildDao への参照を所有し、Child CRUD 操作をそれに任せることができます。
私はダフィーモの答えに同意しますが、あなたの発言には興味があります
これにはORMを使用しますが、PHPにはまだ良いものはありません
私はDoctrineとPropelの両方を使用してきましたが、どちらも非常に有能であることがわかりました。私の個人的な好みは Doctrine ですが、Propel 1.3 では大幅な改善が行われています。