ошибка codeigniter, datamapper и ion_auth приводит меня в замешательство

#php #codeigniter #codeigniter-datamapper

#php #codeigniter #codeigniter-datamapper

Вопрос:

когда я называю это-

 $o = new Order();
  

codeigniter выдает мне эту ошибку-

 A PHP Error was encountered

Severity: Notice

Message: Undefined property: order::$ion_auth_model

Filename: libraries/Loader.php

Line Number: 1035


Fatal error: Call to a member function _assign_libraries() on a non-object in C:xampplitehtdocsportraitssystemlibrariesLoader.php on line 1035
  

На данный момент модель заказа не делает ничего, кроме того, что указано в _template из datamapper 1.8

вот схема базы данных для таблицы заказов

 CREATE TABLE IF NOT EXISTS `orders` (
  `order_id` int(11) NOT NULL AUTO_INCREMENT,
  `user_id` int(11) NOT NULL,
  `image_path` int(11) NOT NULL,
  `status` enum('new','progress','completed','sent') NOT NULL,
  `placed` date NOT NULL,
  `updated_date` date NOT NULL,
  `will_send` int(1) NOT NULL,
  PRIMARY KEY (`order_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
  

Это то, что я пытался сделать..

 $o->user_id = $user->id;
            $o->status = 'new';
            $o->placed = unix_to_human(time(), TRUE, 'eu');;
            $o->will_send = 1;
  

есть какие-либо указания относительно того, почему CI пытается загрузить модель аутентификации в класс user? или чего я здесь не понимаю?

Ответ №1:

  • Где класс Order?
  • Как вы включаете это в свой код?
  • Является ли класс Order автономным? или интегрирован в CodeIgniter?
  • Вы проверили / изменили конфигурацию Ion_Auth?
  • Вы когда-нибудь пытались изменить коды в Ion_Auth?
  • Вы пытались вызвать переменную из ion_auth, которая не существует? (Например: $this->ion_auth->order; или $this->ion_auth_model->order; )
  • Вы вызывали суперкласс CI в классе Order? Если вы пытаетесь получить доступ к классам и функциям CodeIgniter, вы должны получить экземпляр CI внутри класса Order. Например;

     Class Order
    {
        public function __construct()
        {
            //Calling CI superclass to use libraries, models, helpers, views etc...
            $this->ci =amp; get_instance();
    
            //using CI's libraries:
            if ($this->ci->ion_auth->logged_in())
            {
                //Do stuff here...
            }
        }
    }