即時通訊新的蛋糕(和愛它),但我遇到了一個問題,我似乎無法找到解決方案。林肯定有一個明顯的答案,所以我提前如果我問一個愚蠢的問題apols。查找來自不同模型的數據使用Cake
好的,在這裏。
我想建立使用蛋糕PHP版本2
我目前所面對的兩個模型一個簡單的信息系統,一個處理用戶(用於洛進出),另一個處理消息。
郵件表我有以下欄目:
id | sender_id | recipient_id | subject | body
我MessagesController.php內容如下:
class MessagesController extends AppController {
public function recent_messages() {
if (empty($this->request->params['requested'])) {
throw new ForbiddenException();
}
return $this->Message->find(
'all'
);
}
}
我的觀點是坐落在我的元素,它實際上顯示爲下降在我的導航欄中。這是我的看法:
<?php
$messages = $this->requestAction('/messages/recent_messages');
?>
<?php
foreach ($messages as $message): ?>
<li>
<a href="#">
<div> <strong>Username of sender goes Here</strong></div>
<div><?php echo $message['Message']['subject']; ?></div>
</a>
</li>
<li class="divider"></li>
<?php endforeach; ?>
我想要做的是能夠使用sender_id獲得消息發件人的實際用戶名。只是澄清sender_id值實際上是users表中用戶的id(主鍵)。
最初我以爲這將通過設置關聯來完成,但我無法看到如何。
如果有人可以提供任何意見,我將非常感激。
嗨arilia,謝謝你。我剛剛提出瞭解決方案,它與你所陳述的相同,但是我使用$ message ['User'] ['username']訪問數據,但這就是我如何在$ belongsTo數組中設置我的別名。 我正在使用$ this-> requestAction,因爲它的一個元素我認爲這是一個使用數據的元素的正確方法,但是根據您的評論我假設它不會,並會查看它。 –
在我看來,它打破了MVC模式。相反,您可以將數據從控制器傳遞到視圖,然後從視圖傳遞到元素 – arilia