Это должно быть просто, но это не так.
У меня есть библиотека, которая надеется использовать другие библиотеки, но что-то не работает.
Обе библиотеки живут в system / cms / library, потому что, насколько я могу судить, addons / shared_addons / library совершенно бесполезна и библиотеки должны быть автоматически загружены (кажется, что system / cms - это, по сути, system / application)но, пожалуйста, поправьте меня, если ошиблись).Кроме того: просто ради удовольствия я помещаю библиотеку в shared_addons / libaries, чтобы посмотреть, могу ли я вызвать if из модуля;Я не могПочему это там?
Lib1
-needs db
-needs lib2
Lib2
-needs session
Вот что происходит.Контроллер [модуль] загружает;вызывает lib1, который вызывает lib2, который выдает ошибку.Lib1 вызывается всеми контроллерами модулей.Lib2 использует данные сеанса, которые установлены ранее, и вызывается только lib1.
В lib2 я использую $ CI = get_instance (), чтобы предположительно включить библиотеки CI (например, базу данных, сеанс).Однако я не могу пройти мимо "Неустранимая ошибка: вызов функции-члена userdata () для необъекта";который вызывается
//system/cms/libraries/lib2.php
$this->CI =& get_instance();
//$this->load->library('database'); == "can't find class database"
$ekeyLoc = $this->CI->session->userdata('ronery');
Теперь, если я запускаю это в контроллере модуля, он работает как положено.
Так что погуглив эту ошибку, появляется много "db notloaded".Просто чтобы убедиться, что я попытался загрузить базу данных, но потому, что я не могу найти класс 'database' NB: база данных загружается автоматически.
Когда вы назначаете суперобъект CodeIgniter, я предполагаю, что он захватывает весь jabloney, верно?Я так и думал.Но чтобы убедиться, я решил попробовать загрузить класс базы данных в модуль / контроллер, что, как оказалось, не может быть найдено.
Я пытался просматривать документы pyroCMS, чтобы узнать о каких-либо хитростях, но ничего не помогло в моей ситуации.
Почему я не могу загрузить библиотеку ядра изконтроллер модуля?
Почему я не могу загрузить базовую библиотеку в пользовательскую библиотеку в system / cms / library?
Почему суперобъект CodeIgniter, который я назначаю, не содержит session / dbдерьмо?
Почему я не могу загрузить библиотеку из / addons / shared_addons / library?
Почему вызов $this->session->userdata()
будет работать из контроллера модуля, а не из библиотеки впапка system / cms / library, хотя суперобъект CodeIgniter был назначен?
Спасибо.
Через 2 дня без ответа я нахожу это разочаровывающим и веселым, что продолжаюПоиск помощи неизбежно приводит к тому, что этот вопрос является лучшим результатом Google.FML.