我正在通过doctrine 2(Beta3)沙盒,并试图应用Zend框架将编码约定放置到私有类成员的前导下划线。当我查询地址,而其私人成员不强调,我按预期检索对象。当我添加下划线时,重新生成并重新填充数据库,然后运行相同的查询,我收到以下错误消息:doctrine 2注解和Zend框架下划线约定
PHP注意:未定义索引:id in ... Doctrine/ORM/Internal/Hydration/AbstractHydrator。 php 184行 PHP致命错误:未知的异常'Doctrine \ DBAL \ DBALException',消息'请求的未知列类型'。在...主义/ DBAL/DBALException.php:81
的DQL查询:
$q = $em->createQuery('select u from Entities\Address u where u.id = ?1');
$q->setParameter(1, '1');
$address = $q->getSingleResult();
的ZFed Address类:
<?php
namespace Entities;
/** @Entity @Table(name="addresses") */
class Address
{
/**
* @Id @Column(type="integer", length=11, name="id")
* @GeneratedValue(strategy="AUTO")
*/
private $_id;
/** @Column(type="string", length=255, name="street") */
private $_street;
public function getId()
{
return $this->_id;
}
public function getStreet()
{
return $this->_street;
}
public function setStreet($street)
{
$this->_street = $street;
}
}
啊我看到'从实体选择你\地址你在哪里u._id =?1'的作品 - 注意_id。这是如何工作的? – waigani 2010-08-31 22:46:20