2017-05-06 56 views
1

我一直試圖讓連接使用位於app/extensions/data/source/database/adapter/的定製適配器。我想擴展連接類以及鋰:如何更改位置連接'和類似的類尋找適配器

protected static $_adapters = 'adapter.extension.data.source'; 

更換

protected static $_adapters = 'data.source'; 

並改變的app/config/bootstrap/connections.php頂部用用app\extensions\data\Connections; 就足以得到它開始的連接類。但是,這隻會導致代碼仍在嘗試使用原始Connections類的錯誤加載。

有沒有一種簡單的方法來做到這一點,或者我必須重新與重寫類引用擴展一整套的從鋰/數據類的?

編輯︰ 原來我是這樣做錯了。以下內特Abele先生的意見後,Libraries::path('adapter')指給我看,以正確放置MySql.php文件我試圖重寫;-)

回答

1

對於如何命名類交易(即服務,在抽象)的位置,你想看看Libraries類,特別是the paths() method,它允許您定義如何查找類路徑。

您還可以查看關聯的定義,例如locate()$_paths,以便您瞭解默認配置的外觀。

最後,要注意的是,Connections類是「特殊」,因爲它定義了一個動態路徑的基礎上,提供的配置:http://li3.me/docs/api/lithium/1.0.x/lithium/data/Connections::_class()

這應該可以幫助您重新配置類是如何不延長/覆蓋任何組織。一般來說,除非你需要一些截然不同的行爲,否則你不需要那樣做。

+0

此外,隨時跟進代碼示例,顯示您正在做什麼,和/或您收到的錯誤消息。 –

+0

嗨Nate。在閱讀您的回覆並學習了Libraries :: paths()文檔和代碼之後,我編輯了我的原始問題。 – Archer

+0

那麼,你有它的工作? –