estensioni codeigniter modulari
-
27-09-2019 - |
Domanda
Sto cercando di implementare modulare estensioni in una configurazione CodeIgniter 2 ma sto avendo qualche problema. Ho seguito le istruzioni di installazione sul wiki e tutto andava bene lavorando. Poi ho iniziato a giocare un po 'e cercare di usarlo. Tutto quello che ho fatto è stato creare un nuovo modulo denominato utenti con le cartelle necessarie e ha aggiunto una classe modello chiamato users_m. Allora ho provato a caricare questo dal mio regolatore del modulo di benvenuto. Secondo il wiki questo dovrebbe essere molto semplice. Ho semplicemente aggiunto questa riga
$this->load->model('users/users_m');
al costruttore del mio controller benvenuto.
Purtroppo a questo punto ho la schermata bianca della morte.
Così ho provato qualcosa di diverso. Questa volta ho rimosso la linea modello di carico e ha aggiunto
$this->output->enable_profiler(TRUE);
Questa volta ho avuto la pagina di benvenuto visualizzato e ho ottenuto il profiler, ma nella parte superiore della pagina ho ottenuto questo errore:
A PHP Error was encountered
Severity: Notice
Message: Undefined property: CI::$profiler
Filename: MX/Loader.php
Line Number: 145
Non so se questi due tentativi sono legati o no, ma c'è evidentemente qualcosa che non va con la mia messa a punto. Potrebbe qualcuno mi punto nella giusta direzione?
Soluzione
Se l'accesso al modello dal controller nello stesso modulo, è possibile caricarlo utilizzando solo:
$this->load->model(‘user_m’);
Devi solo fare $this->load->model(‘module/model_name’);
quando il carico trasversale tra i moduli.
Proprio per assicurarsi che, il vostro modello si trova qui giusto?
application/modules/users/models/users_m.php
Per quanto riguarda l'errore profiler:
1) Hai installazione fatto passaggio 5 e mettere l'estensioni modulare file di base in applicazioni / core?
2) Avete l'ultima versione di HMVC? Ci sono stati aggiornamenti mx / loader.php nelle paio di ultimi giorni .
Ps. grande tutorial su HMVC: http://net.tutsplus.com / tutorial / php / hvmc-an-introduzione-e-application /
Altri suggerimenti
se si dispone di struttura di cartelle come:
application/
modules/
users/
models/
users_m.php
quindi utilizzare questo per chiamare modelsin voi regolatore
$this->load->model('users/users_m','',TRUE);