Could not load model extension

YuraN
Сообщения: 24
Зарегистрирован: 06.03.2024
Поблагодарил: 3 раз
Спасибо: 2 раз

Could not load model extension

Непрочитанное сообщение YuraN »

Поставил модуль XD Stickers отсюда - https://liveopencart.ru/opencart-moduli ... d-stickers
Поставил на Livestore 3.0.4.2  Вроде как совместимость с Livestore 3.* указана.
Установка без ошибок, в админке все прекрасно работает. При переходе на любую страницу сайта - выдает такую хрень:
 

Код: Выделить всё

Fatal error: Uncaught Exception: Error: Could not load model extension/module/xdstickers! in
 /...../storage/modification/system/engine/loader.php:89 Stack trace: #0 
/...../storage/modification/catalog/controller/product/product.php(564): Loader->model('extension/modul...') #1 
/...../storage/modification/system/engine/action.php(79): ControllerProductProduct->index() #2 
/...../site.ru/catalog/controller/startup/router.php(25): Action->execute(Object(Registry)) #3 
/...../storage/modification/system/engine/action.php(79): ControllerStartupRouter->index() #4 
/...../site.ru/system/engine/router.php(67): Action->execute(Object(Registry)) #5 
/...../site.ru/system/engine/router.php(56): Router->execute(Object(Action)) #6 
/...../site.ru/system/framework.php(169): Router->dispatch(Object(Action), Object(Action)) #7 
/...../site.ru/system/startup.php(104): require in /...../storage/modification/system/engine/loader.php on line 89

Ребята, кто разбирается - подскажите пожалуйста как это дело подправить. Можно конечно и к автору обратиться, наверняка подправит, и поддержка стоит копейки у него... Но хочется понять почему такая ошибка. 
Я так понял затык появляется вот в этой функции:
 

Код: Выделить всё

	public function model($route) {
		// Sanitize the call
		$route = preg_replace('/[^a-zA-Z0-9_\/]/', '', (string)$route);
		
		if (!$this->registry->has('model_' . str_replace('/', '_', $route))) {
			$file  = DIR_APPLICATION . 'model/' . $route . '.php';
			$class = 'Model' . preg_replace('/[^a-zA-Z0-9]/', '', $route);
			
			if (is_file($file)) {
				include_once(modification($file));
	
				$proxy = new Proxy();
				
				// Overriding models is a little harder so we have to use PHP's magic methods
				// In future version we can use runkit
				foreach (get_class_methods($class) as $method) {
					$proxy->{$method} = $this->callback($this->registry, $route . '/' . $method);
				}
				
				$this->registry->set('model_' . str_replace('/', '_', (string)$route), $proxy);
			} else {
				throw new \Exception('Error: Could not load model ' . $route . '!');
			}
		}
	}

В общем задал вопрос можно сказать в учебных целях:) Надеюсь не удалят:)


 
Аватара пользователя
Tom
Разработчик дополнений
Сообщения: 255
Зарегистрирован: 10.03.2022
Откуда: Казахстан - Алматы
Поблагодарил: 15 раз
Спасибо: 107 раз
Контактная информация:

Re: Could not load model extension

Непрочитанное сообщение Tom »

В ошибке прям указано, что у вас подключена модель , которой нет в файлах. Проверьте наличие файла \catalog\model\extension\module\xdstickers.php
 
YuraN
Сообщения: 24
Зарегистрирован: 06.03.2024
Поблагодарил: 3 раз
Спасибо: 2 раз

Re: Could not load model extension

Непрочитанное сообщение YuraN »

Tom - спасибо огромное! Да, файла не было, закинул по FTP - заработало🤝🤝🤝
Теперь попробую посмотреть установщик... почему этот файл отсутствует после установки:)
Вообще общий вопрос на будущее - можно ли после установки модуля вручную по фтп загружать папки модуля или это все должно делаться через install.xml? 
Аватара пользователя
Tom
Разработчик дополнений
Сообщения: 255
Зарегистрирован: 10.03.2022
Откуда: Казахстан - Алматы
Поблагодарил: 15 раз
Спасибо: 107 раз
Контактная информация:

Re: Could not load model extension

Непрочитанное сообщение Tom »

Это указывает обычно автор дополнения, какие именно условия установки.
Ответить