2014-09-04 56 views
0

假設我有一個MySQL數據庫和我有3個實體,如何在cakephp的一個頁面中顯示來自不同數據庫表實體的數據?

  1. 電視
  2. 筆記本
  3. 配件

每個實體包含特定信息。
我想將這些數據打印到一個單獨的ctp頁面。 我該怎麼辦?我不想使用foreign_key

+0

請添加更多一些信息。 – deadman 2014-09-04 10:22:54

+0

我想使用控制器將數據從3個mysql表顯示到cakephp模板(ctp)中。 – 2014-09-04 10:52:02

回答

0

如果要顯示在表中的數據的代碼可能會被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事情陣列的其餘部分做... 我希望你明白。

+0

控制器如何工作?控制器如何從多個數據庫中獲取數據?我們總是使用$ this-> Tutorial-> read(null,$ id)從數據庫讀取數據;這個方法,但是當我想從多個數據庫讀取時,我應該怎麼做? – 2014-09-04 11:47:16

1

您可以使用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);你可以把這個在你的控制器動作中的數據,它會在頁面的頂部輸出,或在您的視圖文件的任何地方)

+0

但是我想在單個ctp文件中打印所有數據 – 2014-09-04 16:10:15

+0

@Rezaul您可以在單個ctp文件中打印所有數據 我們使用loadModel方法調用數據來加載數據 我們存儲了兩個變量並將它們設置爲,這現在可用於查看文件 你想用它做什麼? – 2014-09-09 13:49:56

相關問題