Php 应该在模型或模型映射器中获取子对象吗?

Php 应该在模型或模型映射器中获取子对象吗?,php,model-view-controller,zend-framework,Php,Model View Controller,Zend Framework,这是我之前问题的后续内容: 假设顾客可以借书。如果给定用户对象,则应在何处以及如何取出他们已签出的书籍 以下是我考虑过的一些可能性: 在用户模型中,添加一个getBooks方法 当用户被实例化时,自动获取其书籍并将其存储为books属性 在名为getBooks的用户映射器中创建一个方法,该方法接受用户ID 你推荐什么?谢谢你,我建议你选择: When a Patron is instantiated, automatically get its books and store it as t

这是我之前问题的后续内容:

假设顾客可以借书。如果给定用户对象,则应在何处以及如何取出他们已签出的书籍

以下是我考虑过的一些可能性:

  • 在用户模型中,添加一个
    getBooks
    方法
  • 当用户被实例化时,自动获取其书籍并将其存储为
    books
    属性
  • 在名为
    getBooks
    的用户映射器中创建一个方法,该方法接受用户ID

你推荐什么?谢谢你,

我建议你选择:

When a Patron is instantiated, automatically get its books and store it as the books property

这样你就不必手动担心了

我一直认为这是正确的方法,但是:假设我有一个页面,列出了数据库中的所有用户对象。此页面不关心用户已签出的书籍。在这种情况下,实例化每个用户对象也会产生大量的数据库请求,而这些请求不需要显示页面。这是我最担心的部分。这很简单,只要让构造函数接受bool参数就行了。当你做
新用户时(假)它不会加载它的书籍。默认<代码>新用户()