我有2個模型被加入,但沒有推出的ID,但與另一個領域。Cakephp模型忽略屬於的條件
class Post extends AppModel{
public $useDbConfig = 'test';
public $actsAs = array('Containable');
public $belongsTo= array(
'User' => array(
'className' => 'User',
'foreignKey' => false,
'type' => 'inner',
'conditions' => array('User.field = Post.field')
));
}
但是cakephp沒有正確連接2個模型。對於每個帖子,它只是給第一個用戶(用戶ID爲1)。當我檢查SQL語句時,用戶聲明如下:
任何想法爲什麼這不起作用? 我也嘗試手動加入模型:
$this->paginate = array(
'limit' => '15',
'joins' => array(
'INNER JOIN users User ON (User.field = Post.field)'
)
);
$posts= $this->paginate('Post');
任何想法?
編輯
我完全忘了提,這兩個表是在不同的數據庫。也許有問題。但到目前爲止,我在連接不同數據庫的表格時沒有問題。
編輯
我錯了關於加盟,使我改變它「屬於關聯」到「hasOne」,因爲一個帖子只能由一個用戶寫入。但仍然沒有改變。
可以顯示你想加入的模型嗎? – 2014-09-22 15:18:06
上面顯示了後期模型。你需要什麼用戶模型?我沒有更改用戶模型。 – MrSmith 2014-09-22 15:22:22
顯示'find'語句。你顯示的SQL語句有什麼問題? – AgRizzo 2014-09-22 15:35:02