【问题标题】:PHP CodeIgniter returning Controller Name rather than Doctrine Associated EntityPHP CodeIgniter 返回控制器名称而不是 Doctrine 关联实体
【发布时间】:2013-03-01 00:52:30
【问题描述】:

我有一个与另一个实体有Unidirectional OneToOne 关系的基本实体。我有一个通过变量方法创建的拥有实体的实例,如下所示:

$entity = new $entity;

其中右侧的$entity 只是一个描述类的字符串。当我从拥有实体中获取反向实体(Address)时,它会返回一个与我正在使用的控制器类型相同的类。

$object = $entity->getAddress();

这行代码返回一个Ajax 类型的对象(代码在CodeIgniter 中的控制器)。 getter 的代码很简单,没什么花哨的:

public function getAddress() {
    return $this->address;
}

这里可能发生了什么?为什么我要取回我的控制器实例?

【问题讨论】:

    标签: php orm controller doctrine entity


    【解决方案1】:

    $this->地址设置为什么?

    有没有可能是你设置了$this->address = $this?

    因为如果$this->address = $this那么

    $object = $entity->getAddress();
    

    真的

    $object = $entity;
    

    当然是 $entity 类型的对象;

    【讨论】:

    • 天哪,我是个白痴。我正在尝试在这里创建一个新实体,因此显然还没有创建任何关联的实体……这就是我要检索的内容。感谢您帮助我看到这一点。希望这就是问题所在!
    猜你喜欢
    • 2011-09-04
    • 1970-01-01
    • 2012-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-30
    • 2018-04-09
    • 1970-01-01
    相关资源
    最近更新 更多