簡體   English   中英

如何訪問.tpl文件中的數據庫數據,該文件屬於prestashop 1.6中的另一個控制器/模型?

[英]How can I access DB data in a .tpl file which belongs to another controller/model in prestashop 1.6?

我需要從my-account.tpl文件中的Customer數據庫表中獲取屬於IdentityController的數據。 (說實話,我應該將identity.tplmy-account.tpl的內容合並在一頁上,但是我沒有解決問題的方法。)

我應該更換控制器,還是可以通過my-account.tpl smarty通過IdentityController通過IdentityController訪問Customer表數據? (如果是,如何?)

任何建議可能會有所幫助和贊賞!

非常感謝!

數據不屬於控制器。

一般規則是,代表概念實體(客戶,訂單,購物車等)的數據庫表是通過其同名類(模型)來獲取和修改的。 只要可以在任何給定的控制器中構造Customer對象,就可以從數據庫訪問該對象的相應數據。

控制器僅包含執行某個動作或一組動作的邏輯 為此,它通常與模型中的一個或多個對象進行交互,因為控制器本身不存儲自己的數據。

在這種情況下,如果您有權訪問客戶的ID,則可以將其傳遞給Customer構造函數,然后繼續使用其屬性和方法。

或者,控制器可能已經設置了$this->context->customer屬性,該屬性包含可以使用的已經構造的Customer對象。

一旦可以訪問該數據,只需將值分配給您選擇的smarty變量(通過$this->context->smarty->assign() ),就可以在模板中使用它們了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM