2014-01-22 28 views
0

我是joomla的初學者。我創建自己的組件,並希望使用其他組件(完全內容生成器)的模型。 我找到幾種不同的方式如何建立模型,但我的問題是,Joomla如何從其他組件創建模型

類ContentbuilderModelEdit在它延伸JModel

使用JPATH_COMPONENT_ADMINISTRATOR。當我創建模型ContentbuilderModelEdit我得到警告行使用JPATH_COMPONENT_ADMINISTRATOR常量。

是否有可能從其他組件使用該常量創建模型?

謝謝您的回答

回答

2

唉沒有。 JPATH_COMPONENTJPATH_COMPONENT_ADMINISTRATORdefined常數,並且不能更改。

有時開發人員會直覺地(這很容易)做到這一點,而不會意識到他們對其他開發人員的限制。你可能會考慮聯繫開發者並提出這樣的改變;如果他們接受,你贏了;如果他們不這樣做,寫一個腳本sed執行的變化(與JPATH_SITEJPATH_ADMINISTRATOR . '/components/com_contentbuilder'替換它,每次更新後應用它。

或者說,他們的模型複製到您的組件以及它是否支持它重新命名。

0

:)

撥叫您需要首先另一部件的模型,包括這一模式的路徑:

JModelLegacy::addIncludePath(JPATH_SITE . '/components/comp1/models', 'Comp1Model'); 

其次,你必須創建一個實例你型號:

$model = JModelLegacy::getInstance('Model1', 'Comp1Model'); 

之後,你應該可以使用你的模型的方法。

ref link