CodeIgniter Forums

Full Version: How to load model and helper
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hi All.
I want load model and helper and using it.
Can't you help me using it.
Tks all Heart
i'm use CI4
Interestingly enough, the Models docs doesn't actually say how to load a model. Embarrassing. Smile But, a model is just a class, so you would get a new instance of it like you would any other class:

Code:
$model = new \App\Models\MyModel();

The helpers docs do explain.
Tks you very much
(07-18-2016, 11:56 AM)kilishan Wrote: [ -> ]Interestingly enough, the Models docs doesn't actually say how to load a model. Embarrassing. Smile But, a model is just a class, so you would get a new instance of it like you would any other class:

Code:
$model = new \App\Models\MyModel();

The helpers docs do explain.



How might one "Auto-Load" a model?

Or, as for namespaces, I assume I cant add my "use \namespace;" and then call the model statically like Laravel? such as "ModeName::find(123)", seems repetitive to have to instantiate the class with "new Model()" and then call methods.
(07-22-2016, 12:10 PM)idealcastle Wrote: [ -> ]How might one "Auto-Load" a model?

Or, as for namespaces, I assume I cant add my "use \namespace;" and then call the model statically like Laravel? such as "ModeName::find(123)", seems repetitive to have to instantiate the class with "new Model()" and then call methods.

Nope - no calling it statically - unless you create static methods. FYI - Laravel's not really called static, either, but it sets up an intermediate layer called a Facade, that mimics it and handles creating an instance for you.

The best way to handle it is either load it in your controller's constructor, or have a base controller setup that loads the ones you want.

Thought, it's really not that much typing to say, "$model = new \App\Models\MyModel();" whenever you need it. That has the added benefit that anyone who comes after you that looks at your code knows exactly what the model is at a glance. Smile
(07-22-2016, 12:34 PM)kilishan Wrote: [ -> ]
(07-22-2016, 12:10 PM)idealcastle Wrote: [ -> ]How might one "Auto-Load" a model?

Or, as for namespaces, I assume I cant add my "use \namespace;" and then call the model statically like Laravel? such as "ModeName::find(123)", seems repetitive to have to instantiate the class with "new Model()" and then call methods.

Nope - no calling it statically - unless you create static methods. FYI - Laravel's not really called static, either, but it sets up an intermediate layer called a Facade, that mimics it and handles creating an instance for you.

The best way to handle it is either load it in your controller's constructor, or have a base controller setup that loads the ones you want.

Thought, it's really not that much typing to say, "$model = new \App\Models\MyModel();" whenever you need it. That has the added benefit that anyone who comes after you that looks at your code knows exactly what the model is at a glance. Smile

Thanks. yeah I actually like that. I've been testing out CI4, building one of my new platforms off it (really would like to see how it handles).