即時通訊使用CakePHP和Im,這裏是我的情況:CakePHP的Stucked卡死有關列出多個模型的想法關聯模型
我有兩個主要模式,即任務和活動。我使用Events模型來跟蹤所有更改。這有ff字段:id,model,model_id,已更改 我使用Events表來跟蹤多個模型更改。所以當有東西改變任務模型它將被記錄到事件模型(得到的想法??)
我想要做的是每當我使用事件模型的查找方法,我想列出模型信息(用於例如,任務模式),像這樣我的活動信息一起:
array(
[0] => array (
[Event] => array(
id => 1
model => Task
model_id => 2
changed => array()
)
[Task] => array(
id => 2
name => Task 1
descp => Test Task
)
)
)
注:該模式可以是任何模式,它可以是項目模型。
在我task.php,這是沒有問題的,因爲我可以很容易地宣告:
var $hasMany = array(
'Events' => array(
'className' => 'Events',
'foreignKey' => 'model_id',
'dependent' => false,
'conditions' => array('Events.model' => 'Task')
)
);
我可以使用find方法上取得任務事件的信息,雖然使用
$this->Task->Event->find('all');
將無法正常工作,我不知道爲什麼。
因此,一旦我宣佈,這樣的事情在我的事件模型:
var $belongsTo = array(
'Task' => array(
'className' => 'Task',
'foreignKey' => 'model_id',
'conditions' => array('Event.model' => 'Task', 'Event.model_id' => 'Task.id'),
'fields' => '',
'order' => ''
)
);
將拋出一個SQL錯誤。你們有一個想法如何實施它? 謝謝先進。 :)
是的男人!有效!這個小問題是罪魁禍首。我刪除了我的模型中的複數形式,它起作用了!非常感謝你,我也會將類似的協會應用到其他車型上。謝謝你!我現在快樂地跳了起來...... :)) – theredforest