假設我有一個MySQL數據庫和我有3個實體,如何在cakephp的一個頁面中顯示來自不同數據庫表實體的數據?
- 電視
- 筆記本
- 配件
每個實體包含特定信息。
我想將這些數據打印到一個單獨的ctp頁面。 我該怎麼辦?我不想使用foreign_key
。
假設我有一個MySQL數據庫和我有3個實體,如何在cakephp的一個頁面中顯示來自不同數據庫表實體的數據?
每個實體包含特定信息。
我想將這些數據打印到一個單獨的ctp頁面。 我該怎麼辦?我不想使用foreign_key
。
如果要顯示在表中的數據的代碼可能會被similler這樣的:
<table>
<th>Title</th>
<th>Title</th>
<?php foreach ($array as $temp_variable):?>
<tr>
<td><?php echo $temp_variable['ModelName']['ColumnName']; ?></td>
<td><?php echo $temp_variable['ModelName']['ColumnName']; ?></td>
<?php endforeach;?>
</tr>
</table>
一件array..similar事情陣列的其餘部分做... 我希望你明白。
控制器如何工作?控制器如何從多個數據庫中獲取數據?我們總是使用$ this-> Tutorial-> read(null,$ id)從數據庫讀取數據;這個方法,但是當我想從多個數據庫讀取時,我應該怎麼做? – 2014-09-04 11:47:16
您可以使用Cake的loadModel函數將任何表中的數據調用到當前控制器中。更多關於這個page的底部的信息。
$this->loadModel('YourModel');
然後設置變量,使其在提供你的看法:
$this->set('yourModel', $this->YourModel->find('all', $settings);
$this->loadModel('YourOtherModel');
$this->set('yourOtherModel', $this->YourOtherModel->findI('all', $settings);
現在已經從你的模型設置兩個變量,它們可用於在您的視圖。
(使用debug看到所有可用即debug($yourModel);
你可以把這個在你的控制器動作中的數據,它會在頁面的頂部輸出,或在您的視圖文件的任何地方)
但是我想在單個ctp文件中打印所有數據 – 2014-09-04 16:10:15
@Rezaul您可以在單個ctp文件中打印所有數據 我們使用loadModel方法調用數據來加載數據 我們存儲了兩個變量並將它們設置爲,這現在可用於查看文件 你想用它做什麼? – 2014-09-09 13:49:56
請添加更多一些信息。 – deadman 2014-09-04 10:22:54
我想使用控制器將數據從3個mysql表顯示到cakephp模板(ctp)中。 – 2014-09-04 10:52:02