我正在通過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