Utvikling av en MVC Komponent/Innledning

 
Utvikling av en MVC Komponent/Innledning

Dette er en flere-artikkel serie av opplæring i hvordan å utvikle en modell-View-Contoller komponent for Joomla versjon 3.1.

Begynner med introduksjonen, og navigere artiklene i denne serien ved hjelp av navigasjonsboksen til høyre ( artiklene i denne serien).

Krav

Du trenger Joomla 3.0 (med PHP, MySQL, Apache og Microsoft II) eller større for denne opplæringen.

Jeg samlet mye informasjon, og da jeg begynte å migrere komponenten av det nye Joomla 2.5 til 3.0. Nedenfor er noen viktig informasjon som brukes for overføring:

Bruke "display_errors på" å hjelpe i feil debug.

Overføre Joomla 2.5 til Joomla 3.0:

Husk at du må legge til Legacy noe sted du direkte forlenger JModel, JView eller JController. Hvis det er indirekte (som gjennom JModellist) du trenger ikke å, det har allerede tatt vare på. Annet enn det og det faktum at som annonsert lenge siden Avskrevne kode har blitt fjernet (jeg vil gjette at JParameter er den største effekten) utvidelser bør bare trenger mindre endringer... selv om du vil ønske å se på utgang endringene som Kyle bearbeider. Selvfølgelig hvis du bygger frittstående platform applikasjoner ny MVC og JApplicationWeb/JApplicationCLI er helt måten du bør arbeide og fine med måten vi har gjort dette er at er de nye pakkene allerede rett på serveren din etter å ha kommet med CMS. (Elin i utvikling-listen)

Eksempler:

DS

Siden vi har fjernet DS-konstant i 3.0, må vi erstatte bruken av konstanten i com_media. Mest diskret endringen er å bare erstatte det med PHP'S DIRECTORY_SEPARATOR konstant siden DS er et alias som.

(joomlacode)

if(!definert('DS')){
define('DS',DIRECTORY_SEPARATOR);
}
//$controller = JController::getInstance('HelloWorld');
$controller= JControllerLegacy:getInstance()"HelloWorld");
//class HelloWorldViewHelloWorlds utvider JView
klassenutvider JViewLegacy
klassenutvider JControllerLegacy
klassenutvider JModelItemLegacy
klassenutvider JModelFormLegacy
JRegistry:getValue(() nå) er JRegistry:()
//Convert prøve å JRegistry med LoadJSON - Sample fra Joomla 3.0 kildekoden
//                             $params = nye JRegistry;
//                             $params -> loadJSON ($ dette ->-element > parametere);
//                             $this -> element -> params = $params;
                                $params=nye JRegistry;
                                $params->finner($item->params);
                                $item->params=$params;

Her kildekode: https://joomlacode.org/gf/project/hellojoomla3/frs/

Nye MVC i Joomla 3.0

"Versjon 12,1 av plattformen introdusert et nytt format for model-view-controller paradigme. Principly, klassene JModel, JView og JController er nå grensesnitt og abstrakt grunnklasser er nå JModelBase, JViewBase og JControllerBase henholdsvis. I tillegg, alle klasser er forenklet fjerne mye av kopling med Joomla CMS som er unødvendig for frittstående Joomla Platform applikasjoner."... [Joomla plattform manuell MVC - https://developer.joomla.org/manual/chap-Joomla_Platform_Manual-MVC.html]