Joomla.it Forum

Non solo Joomla... => Sviluppo => : Gokuale - Takumi 23 Jul 2013, 23:17:18

: Dubbio su pattern MVC
: Gokuale - Takumi 23 Jul 2013, 23:17:18
Ciao, sto sviluppando un componente di joomla 3.x per un mio progetto e ho un dubbio riguardante il pattern MVC.
Questo componente ha 3 view(chiamiole A,B,C) e per default si arriva sulla view A.
Ho bisogno di spostarmi dalla view A alla view B tramite un submit di un form presente nella view A passandogli anche dei paramentri aggiuntivi che poi mi serviranno per stampare determinate cose. Dopodiche lo stesso dalla view B alla view C.
le miedomande sono:
1)come gestisco il controller? cioe, c'e' un controller per ogni view o un controller unico che poi seleziona la view corretta? e come si implementa? :D
2)che paramentro/action devo mettere alla form della view A per dirgli "vai alla view B"? basta un "index.php?option=com_name&view=B&..." o bisogna farequalcos'altro?
: Re:Dubbio su pattern MVC
: simone83 26 Jul 2013, 12:30:09
ciao, i tuoi dubbi li puoi solo risolvere studiandoti la documentazione


comunque in breve, puoi usare 1 controller solo situato nella root del componente che si chiamera controller.php e dentro avra una class ComponentController extends JCotrollerLegacy o quello che vuoi
e li dentro ci scrivi tutte le funzioni


le funzioni vengono richiamate tramite url o form con la variabile task quindi avrai nella tua form un task ad esempio task="funzione_a", quindi la action serve relativamente, dovrai fare tu un redirect dopo l'aver eseguito la funzione , e far andare l'utente al passo successivo


oppure se hai piu view e model puoi utilizzare controller specifici situati nella cartella controllers del tuo componente, qui scriverai i tuoi controller con nome uguale alla view quindi view bla avra controller bla


Qui questo controller potra  estendere o ComponentController di prima o un altro controller sia tuo che del core. Le funzioni che stanno in questo saranno richiamabili tramite task="bla.funzione_a"


Comunque cerca una guida xche è veramente lunghissimo da spiegare ho cercato solo di darti un idea