Autore Topic: Programmazione MVC - Chiarimento per capire bene  (Letto 5152 volte)

Offline salvosound

  • Esploratore
  • **
  • Post: 64
    • Mostra profilo
Programmazione MVC - Chiarimento per capire bene
« il: 03 Apr 2012, 18:26:02 »
Buonasera a voi tutti
Mi chiamo Salvatore e sono alle prese con lo sviluppo di un componente per la gestione di un booking per alberghi e strutture ricettive. Ho provato all'inizio a modificare un componente esistente ma poi alla fine ho preferito buttarmi a testa bassa sulla programmazione di un nuovo componente per imparare la programmazione e qui iniziano i Dolori!

Ho articolato le tabelle di gestione in diverse tabelle. Sono 6 in tutto per avere i dati in modo piu pratico, secondo me, indicizzandoli con l'id di ognuno e legato a quello principale a cui fa riferimento.

Ora sul frontend devo creare delle liste con le migliori offerte, con le selezioni per regioni, citta ecc.
per ora sono riuscito a titar fuori solo un componente estraendo i dati da piu tabelle. Le richieste vengono fatte dal model che richiama tutti i dati dalle tabelle ma mi prende un elemento alla volta tramite questo codice:
$id = JRequest::getInt('id_hotel', 2 );

non riesco aad implementare una ricerca per ricercare o creare una lista in quanto il model mi crea solo un Array singolo ma piu che altro il codice sopra mi estrae un solo elemento. Come si fa per estrarre una lista e a passarla alla view?

Ho seguito diverse guide, fra cui com_helloword che piu di tanto non va avanti e altre informazioni sui vari posto ma ancora una cosa non mi è ben chiara e quindi vi chiedo:

La programmazione MVC separa il codice dai tag.  Oltre alla guida com_helloword ne esiste qualche altra piu approfondita? qualcuno di voi ha fatto qualche schemino che richiami la programmazione MVC? una sorta di linea guida. o si passa solo attraverso la lettura del codice altrui?

Spero di essermi spiegato bene.



mau_develop

  • Visitatore
Re:Programmazione MVC - Chiarimento per capire bene
« Risposta #1 il: 03 Apr 2012, 19:37:28 »
conosci php? anche ad oggetti?

M.

Offline salvosound

  • Esploratore
  • **
  • Post: 64
    • Mostra profilo
Re:Programmazione MVC - Chiarimento per capire bene
« Risposta #2 il: 03 Apr 2012, 19:55:22 »
Si lo conosco, non  a livelli molto pesanti ma lo conosco.

mau_develop

  • Visitatore
Re:Programmazione MVC - Chiarimento per capire bene
« Risposta #3 il: 03 Apr 2012, 20:05:24 »
Come si fa per estrarre una lista e a passarla alla view?
---------------------------------------------------------------------------
la estrai nel controller con il metodo del model istanziato, che avrai implementato, che farà una query
poi l'assegni alla view istanziata con $tua_view->assign('var', $var);
nella view la recuperi con il metodo get() e la fai diventare $this così è disponibile nel template

M.

Offline salvosound

  • Esploratore
  • **
  • Post: 64
    • Mostra profilo
Re:Programmazione MVC - Chiarimento per capire bene
« Risposta #4 il: 07 Apr 2012, 11:22:34 »
Come si fa per estrarre una lista e a passarla alla view?
---------------------------------------------------------------------------
la estrai nel controller con il metodo del model istanziato, che avrai implementato, che farà una query
poi l'assegni alla view istanziata con $tua_view->assign('var', $var);
nella view la recuperi con il metodo get() e la fai diventare $this così è disponibile nel template

M.

Grazie della risposta, però è la stesa che si trova sul tutorial di Hello world.

Forse non mi sono spiegato perche vado sempre di fretta, ci riprovo.

Devo creare una lista di oggetti, alberghi nel mio  caso, e farli visualizzare nel frontend. Per ora sono riuscito solo a far visualizzare un elemento soltanto.
i dati sono memorizzati su piu tabelle, ho provato a seguire il codice del backend a la risposta è questa:

 Warning: Invalid argument supplied for foreach() in /home/websites/infotraveltouroperator/infotraveltouroperator/www/B2C/components/com_royalhotel/views/hotels/tmpl/default.php on line 8   
il controller funziona con un solo elemento. ho messo nel model il codice che fa la select della tabella ( di una ma ne dovrei tirare piu di un ) e ritorno la query. Nella view faccio un ciclo forearc per cercare tutti i dati presenti in tabella. ma l'errore che mi viene fuori e che non va bene il foreach.

spero di essere stato chiaro. Sapete cosa devo controllare per vedere il passaggio corretto dei paramentri?
grazie




mau_develop

  • Visitatore
Re:Programmazione MVC - Chiarimento per capire bene
« Risposta #5 il: 07 Apr 2012, 11:29:36 »
Grazie della risposta, però è la stesa che si trova sul tutorial di Hello world.
----------------------------------------------------------------------------
sarà perché si fa così?

per ora sono riuscito solo a far visualizzare un elemento soltanto.
---------------------------------------------------------------------------
probabilmente sbagli la query oppure stai usando nel frontend le classi per le liste che non ci sono

Warning: Invalid argument supplied for foreach()
-------------------------------------------------------------------
...questo mi fa supporre solo 2 cose:
- o nonostante ti abbia suggerito come passare e recuperare le var tu non lo fai (altrimenti avresti messo un default per quell'array )
- o appunto sbagli la query e passi ..chesso il risultato di un loadResult ... che non è un array e non puoi mettere come argomento di una foreach

M.

Offline salvosound

  • Esploratore
  • **
  • Post: 64
    • Mostra profilo
Re:Programmazione MVC - Chiarimento per capire bene
« Risposta #6 il: 18 Apr 2012, 09:46:50 »

Grazie per la pasienza ma vorrei ancora chiedere,
Come fa il controller ed estrarre le varie richieste?




mau_develop

  • Visitatore
Re:Programmazione MVC - Chiarimento per capire bene
« Risposta #7 il: 18 Apr 2012, 10:05:49 »
con i metodi costruiti nella classe controller che tu estendi nella tua estensione (componente nel tuo caso)

M.

Offline salvosound

  • Esploratore
  • **
  • Post: 64
    • Mostra profilo
Re:Programmazione MVC - Chiarimento per capire bene
« Risposta #8 il: 18 Apr 2012, 10:19:43 »
Metodo sta a PHP come Funzione sta a C
Ok adesso ci sono.
Quindi se voglio fare 3 funzioni di modifica devo creare tre metodi nel controller e poi gestirli come fossero tre "helloword" cioe tre rami separati.?

« Ultima modifica: 18 Apr 2012, 11:11:18 da salvosound »

mau_develop

  • Visitatore
Re:Programmazione MVC - Chiarimento per capire bene
« Risposta #9 il: 18 Apr 2012, 12:26:26 »
beh ci sono le funzioni anche in php.

i metodi (se ti piace chiamale funzioni) di una classe, diversamente da una semplice funzione, contribuiscono a specializzare la classe e a dare la possibilità a chi la usa di estenderla a piacimento avendo a disposizione i metodi della superclasse integrati da quelli implementati nell' "extends", e raggiungendo le peculiarità di una classe rispetto ad una funzione: il polimorfismo e l'ereditarietà.

Quindi se voglio fare 3 funzioni di modifica devo creare tre metodi nel controller e poi gestirli come fossero tre "helloword" cioe tre rami separati.?
-------------------------------------------------------------------------------------------------------
..quindi 3 controller + 1 diciamo... master che fa da controller per gli altri tre, con la possibilità di fare qualcosa o semplicemente di essere proxi.

M.

Offline salvosound

  • Esploratore
  • **
  • Post: 64
    • Mostra profilo
Re:Programmazione MVC - Chiarimento per capire bene
« Risposta #10 il: 18 Apr 2012, 15:34:47 »
ok bene ora ci sono un po
adesso sono bloccato alla toolba.
dal lato admin, la lista compare i collegamenti ai vari elementi mandano ii llink corretto, ma non richiamano la pagina di modifica ne tanto meno la pagina di inserimento nuovo elemento. ritornando una risposta di questo tipo.

 500 - Si è verificato un errore. Controllo non valido: nome='royalhotel', formato=''

ho provato a vedere se l'errore parte dalla views ma non è cosi.
cercavo di vedere se la funzione loadform() potesse dirmi cosa richiede, se  è lei. ma ahime nulla.









Offline salvosound

  • Esploratore
  • **
  • Post: 64
    • Mostra profilo
Re:Programmazione MVC - Chiarimento per capire bene
« Risposta #11 il: 19 Apr 2012, 17:57:46 »
Nonono
Nn va si vede che io la programmazione mvc siamo il giorno e la notte.
H trovato come passare alcuni parametri e adesso torn alla programmazione a mio modo.
Chi fa da se fa per tre.
D'altronde i tutorial non spiegano piu di tanto, di ibri seri non ne ho trovati, dovrei studiare codice per codice? No me lo posso permettere.
Pazienza  ci ho provato.!!!!

Offline fratac

  • Esploratore
  • **
  • Post: 68
  • Sesso: Maschio
    • Mostra profilo

mau_develop

  • Visitatore
Re:Programmazione MVC - Chiarimento per capire bene
« Risposta #13 il: 16 Giu 2012, 14:49:10 »
@ fratac hai letto il post?

Ho seguito diverse guide, fra cui com_helloword che piu di tanto non va avanti

 

Host

Torna su