2013-04-09 121 views
0

我正在使用cakephp 1.3的网站。上个月,我改变了网站的托管服务。之后,我有一个问题。cakephp find('all')语句返回双项

即。我在我的数据库中有预订表。当我使用find()语句时,预订表返回双重条目。我找不到为什么会发生这种情况。

例如,我得到的特定地点的车辆数据返回下方,

当我使用“递归” => 2中查找(“全部”)语句,我得到了以下


**

Parking Location : Chennai Citi Centre 2W 
Booking Date : 02/04/2013 
Booking ID Transaction Type Vehicle No Check In Date  Check Out Date 
187994  Normal   7099  02/04/2013 18:31 02/04/2013 22:03 
187994  Normal   7099  02/04/2013 18:31 02/04/2013 22:03 

**

但是当我使用 '递归'=> - 1在查找( '全部')statem耳鼻喉科,我得到了以下

** 

Parking Location : 
Booking Date : 02/04/2013 
Booking ID Transaction Type Vehicle No Check In Date  Check Out Date 
187994  Normal   7099  02/04/2013 18:31 02/04/2013 22:03 

**

这里的停车位置不来了。它在提供者表中。

请人帮我解决这个

回答

0

通常我会建议不要使用比recursive=>-1其他任何东西,只是使用时中容纳的行为适当。 我无法真正告诉你为什么第一种方法在不知道模型关联的情况下返回双重条目,或者没有使用确切的查找查询(您是否正在使用Bookings或Parking进行find()或其他操作:S ?),但尝试使用可容忍的,看看它是否工作。

喜欢的东西...(我只是要假设你的模型怎么叫,你是如何使用find())

$this->Booking->find('all', array('conditions'=> array() ,//some conditions here 
            'recursive' => -1, 
            'contain' => array('Parking')); 

之后,执行返回数组的转储看看输出是否符合你的需求。更多可遏制行为check here