L'app web ha quattro aree utente distinte.
- Il frontend per le persone fuori dalla strada
- L'area utente per gli utenti registrati
- Una zona insegnante
- Un pannello c amministratore
Sto usando CodeIgniter con l'estensione HMVC.
Ecco il mio attuale elenco di cartelle dei moduli. Ogni tabella del database ha un modulo corrispondente.
OgnimodulohaunatriadeMVCadeccezionedellacartellaadminedellacartellateach.
LacartelladiamministrazioneècomeunaminiapplicazionesolopergliamministratoriconpiùcontrollerchegestisconociascunounURLdiamministrazione.Ilmoduloadminsipresentacosì:
AllostessomodoilmoduloTeachècomeunaminiapplicazionesolopergliinsegnanti.Tuttiicontrollersonoindirizzatiawww.example.com/teach/controller/method/param.
Sembraquesto:
Ogni modulo ha esattamente un modello e sto caricando i modelli dove e quando ne ho bisogno, quindi se ho bisogno del modello di pianificazione nel controller admin / studente, scrivo semplicemente:
$this->load->model('schedule/Schedule_model');
Non riesco a pensare a un altro modo in cui potrei fare questo senza creare percorsi personalizzati nel file routes.php per ogni singolo metodo.
Tuttavia qualcosa non va bene. Non sono riuscito a trovare alcuna informazione sul web su come strutturare un sito con sotto-applicazioni e non ho mai visto un sito strutturato come quello che ho strutturato.
Tutto funziona bene, ma sono interessato a sapere se c'è un modo migliore.