Отзывы клиентов

Александр Казанцев, сотрудник компании Mandriva.ru
Спасибо за простую в использовании систему. Благодаря ей, я один могу обслуживать как корпоративный сайт компании Мандрива Россия, так и свой «небольшой» образовательный проект
Все отзывы о UMI.CMS
Новости UMI.CMS

Уважаемые посетители! Сообщаем вам, что Служба Заботы прекратила поддержку UMI.CMS на форуме.

Для связи со Службой Заботы пользуйтесь формой обратной связи

Ошибки после обновления на 2.8.1.2

После обновления, как я уже писал перестали работать некоторые uSel. И при оформлении заказа стали вылетать странные ошибки:

Fatal error: Call to a member function getAllFields() on a non-object
in
/.../classes/system/subsystems/models/data/umiObject.ph
p on line 118

Вылечил заменой это строки с:
$fields = $this->type->getAllFields();
на:
$fields = $this->getType()->getAllFields();

Но дальше опять возникает ошибка:
Ошибка (coreException): Can't get class name prefix from object #

#0 /.../classes/modules/emarket/classes/delivery/delivery.php(30): objectProxyHelper::getClassPrefixByType(NULL)
#1 /.../classes/modules/emarket/__delivery.php(114): delivery::get(Object(umiObject))
#2 /.../classes/modules/def_module.php(62) : eval()'d code(1): __emarket_delivery->renderDeliveryList(Object(order), 'default')

и ее я пока не могу устранить. Есть подозрение что ошибки возникли по моей вине, так как при импорте товаров активно шерстятся шаблоны данных, но все делается через штатные API. Куда копать?
Цитировать
newARTix
(24.08.2010 13:10)

Re: Ошибки после обновления на 2.8.1.2

Во, еще косяк. Не мог в админке удалить один из типов доставки.
Опять в файле umiObject.php пришлось поменять пару строк:
475: return $this->getType()->getModule();
479: return $this->getType()->getMethod();

Похоже, что при включенном кэше не отрабатывает метод umiObject->afterUnSerialize(). И из-за него вылезало все остальное.
Цитировать
newARTix
(24.08.2010 13:21)

Re: Ошибки после обновления на 2.8.1.2

При выключенном кэше ошибок не возникает и со стандартным umiObject.php. Похоже догадка верна.
Цитировать
newARTix
(24.08.2010 13:36)

Re: Ошибки после обновления на 2.8.1.2

Из личного опыта:
если после обновления с 2.74 на 2.8 выскакивает ошибка Ошибка (coreException): Can't get class name prefix from object #
на том месте, где должны были выводится список способов доставки, то просто надо через админку почистить этот список, т.е. всё удалить там и опять создать
Цитировать
Сергей
(24.08.2010 20:42)

Re: Ошибки после обновления на 2.8.1.2

Фишка как раз в том что лишний тип доставки (который там появился после обновления) я не мог удалить, пока не отключил кэш на сайте. Ну или не внес изменения в umiObject.php Оба эти действия нейтрализуют (временно) баг.

А вообще совет дельный :) Надеюсь поможет страждущим. А то "служба заботы" походу поставила минимальный интервал на ответ в 3 рабочих дня...
Цитировать
newARTix
(24.08.2010 22:12)

Re: Ошибки после обновления на 2.8.1.2

Пофлэймить: Очень надеюсь, что юмовцы всё же долижут 2.8 хотя бы до уровня 2.74... Ибо движок в плане гибкости просто великолепен.

А что касается кэша, то я его в 99% сразу выключаю и другим советую как только первый же вопрос возникает по работе сайта. (хотя тут у меня к юми нет претензий, сам дописывал кэширование для пары самописных движков, простеньких... это застрелиться , сколько там нюансов...)
Цитировать
Сергей
(25.08.2010 08:15)

Re: Ошибки после обновления на 2.8.1.2

Ну да, про кэш я конечно стормозил. Кстати он в 2.8.1.0 вообще работал странно. Кэшировал так что приходилось сбрасывать чтобы увидеть изменения на сайте. Но зато летал! :) А вот в 2.8.1.2 все стало с точностью до наоборот. Вообще разницы нет, что с кэшем, что без. Зато и сбрасывать не надо :)
Цитировать
newARTix
(25.08.2010 12:18)
Комментирование доступно только авторизованным пользователям.
Пожалуйста, зарегистрируйтесь или войдите на сайт.
Распечатать