2009-08-26 54 views
0

很抱歉,如果這個問題太含糊,但我寧願不要糊塗,這與我的假設有關,關於什麼可能或可能不是真正相關的背景信息。在CakePHP視圖中訪問關聯

如果我創建關聯,如員工屬於關聯公司

當我創建了員工一個視圖,並希望展示自己的公司名稱我怎麼能僅僅通過顯示公司名稱...

<?php echo $employee['Employee']['Company']['company_name'] ?> 

或只是一個自定義屬性(如果這樣的事情存在),如...

<?php echo $employee['Employee']['CompanyName'] ?> 

這當然,假設使用的...

$this->set('employee',$someEmployeeRetreivalLogicHere) 

...在控制器

+2

你想在Cake中熟悉的第一件事是查詢結果的結構。正如dhofstet指出的那樣,對不同查詢的結果做一些'debug()'。 – deceze 2009-08-26 04:55:38

+0

是的,以爲我把它放下了,但顯然我沒有。我在默認佈局上運行,它顯示了發送到數據庫的sql。我想我需要了解cakephp如何更好地檢索數據,因爲我看到的sql語句只在employees表上,並且不包含任何連接 – 2009-08-27 20:09:27

回答

3

它應該與訪問:

<?php echo $employee['Company']['company_name'] ?> 

如果不起作用,使用debug($員工);查看數組的結構。

+0

只需添加:這當然要求使用適當的'遞歸「設置。 – deceze 2009-08-26 04:53:11

+0

所以在你的例子中說員工有一個名爲「僱傭」的日期屬性,我可以通過「$ employee ['Employee'] ['hired']」或將它作爲「$ employee ['hired']」 此外,默認的遞歸設置是0對不對? – 2009-08-26 14:52:22

+0

@deceze:是的,你說得對,謝謝你的加入。 – dhofstet 2009-08-26 15:43:58