0

I am trying to load a model in a library.

This is how I am loading it,

class Init{
 private $CI;

    function __construct()
    {
        $this->CI = &get_instance();
        $this->CI->load->model("backend/StoreSettings_Model");
    }
}

When I try to access the method in the storesettings_model, I get the following error Undefined property: Init::$Storesettings_Model

 public function settingsSetUp($store_name){

      $settings =   $this->CI->storesettings_model->getStoreSettings($store_name);

}

I have tried the changing the case to match the case of the class I am loading to StoreSettings_Model... still same problem

If I load the library with all lower case then it will work, but then when I upload to my development server which runs on Linux, it will throw an error because the class name is StoreSettings_Model and the im instantiating with storesettings_model

Has anyone face this issue before? If so what do you suggest about fixing it?

Any help would be really appreciated.

tereško
  • 58,060
  • 25
  • 98
  • 150
json1
  • 93
  • 4
  • You have named your model wrong instead of StoreSettings_Model try `Storesettings_model.php` for file name and `class Storesettings_model extends CI_Model {}` only first letter should be upper case. `$this->CI->load->model('backend/storesettings_model')` –  Aug 19 '16 at 02:28
  • On here `$this->CI = &get_instance();` you have a space on the right side of the `= &` try like `$this->CI =&get_instance();` http://stackoverflow.com/questions/4740430/explain-ci-get-instance –  Aug 19 '16 at 07:33

1 Answers1

0

Try this

function __construct()
{
    #  $this->CI = &get_instance(); < ---- remove this 
    $this->load->model("backend/StoreSettings_Model"); # remove CI-> 
}

in Method

 public function settingsSetUp($store_name){

      $settings =   $this->storesettings_model->getStoreSettings($store_name);  # remove CI-> on here too

}
Abdulla Nilam
  • 36,589
  • 17
  • 64
  • 85