Magento 1.7 Ошибка контроллера создания заказа

Недавно я обновился до Magento 1.7.0.2, и когда я пытаюсь создать заказ в панели администратора, я получаю ошибку сервера 500, и это регистрируется:

PHP Fatal error: Call to undefined method Mage_Catalog_Helper_Product::setSkipSaleableCheck() in /var/www/vhosts/dev.mydomain.com/httpdocs/app/code/core/Mage/Adminhtml/controllers/Sales/Order/CreateController.php on line 45, referer: https://dev.mydomain.com/index.php/admin/sales_order/index/key/5da67d5b8c41312785d474f556dbfb7f/

Пока не удалось найти никого с похожими проблемами... Есть идеи?


person Miles Pfefferle    schedule 26.09.2012    source источник
comment
Перво-наперво; у вас есть метод setSkipSaleableCheck в файле /var/www/vhosts/dev.mydomain.com/httpdocs/app/code/core/Mage/Catalog/Helper/Product.php?   -  person drj201    schedule 11.10.2012
comment
Да, у меня есть этот метод в этом файле   -  person Miles Pfefferle    schedule 15.10.2012


Ответы (2)


У меня такая же проблема. У кого-нибудь есть идеи?

Привет, Майлз! Я нашел решение после долгих поисков... http://www.magentocommerce.com/boards/viewthread/205818/#t324666

Пост WarehouseMultimedia помог. Изменение php.ini помогло. Я никогда не редактировал файл .htaccess, и он работал. Я также был на версии 1.7, и это решение все еще работало.

"...

Я исправил это, увеличив настройки memory_limit и max_execution_time как в php.ini, так и в .htaccess:

php.ini

memory_limit = 256M

max_execution_time = 18000

.htaccess

php_value memory_limit 256M

php_value max_execution_time 18000

"

Похоже, это проблема, уникальная для bluehost. Вы используете bluehost?

person Diana    schedule 03.10.2012
comment
Вам, конечно, не нужно максимальное время выполнения 18000 секунд (то есть пять часов!) - person Jocelyn; 04.10.2012
comment
Пожимайте плечами... кто знает программный смысл кода WarehouseMultimedia. Просто повторно цитирую его здесь как подходящее решение для рассматриваемой проблемы. - person Diana; 04.10.2012
comment
Ура! Я не одинок! Спасибо за публикацию. Я проверю это и вернусь к вам. Я на Рэкспейсе. - person Miles Pfefferle; 09.10.2012
comment
Мои значения уже были установлены на то, что вы указали выше. Я попытался увеличить их еще больше и все еще сталкиваюсь с той же проблемой. - person Miles Pfefferle; 10.10.2012

У меня установлен Magento 1.7.0.2 и этой ошибки быть не должно! Возможно, при обновлении пропущена часть основного кода Magento. Как вы его обновили?

Это сообщение об ошибке говорит о том, что класс Mage_Catalog_Helper_Product (~/app/code/core/Mage/Catalog/Helper/Product.php) не содержит метод setSkipSaleableCheck. В моей копии v1.7.0.2 у меня есть этот метод.

Откройте ~/app/code/core/Mage/Catalog/Helper/Product.php и найдите «общедоступную функцию setSkipSaleableCheck($skipSaleableCheck = false)». Если этого определения метода не существует, загрузите ванильную версию Magento 1.7.0.2 и замените этот файл.

Это должно исправить только отсутствующий метод.

person satrun77    schedule 10.10.2012
comment
Да, у меня есть эта функция public function setSkipSaleableCheck($skipSaleableCheck = false) - person Miles Pfefferle; 15.10.2012
comment
Тогда ваша проблема в другом. Очистите весь кеш Magento и убедитесь, что следующий каталог пуст (~/var/cache ~/var/report ~/var/session). Затем включите отчеты об ошибках, переименовав файл (~/errors/local.xml.sample в local.xml). Затем повторно протестируйте свой сайт. Какие сообщения об ошибках вы получаете? Убедитесь, что вы отключили отчеты об ошибках после завершения тестирования. Переименуйте local.xml в local.xml.sample. - person satrun77; 16.10.2012
comment
Я переименовал файл errors/local.xml, но где регистрируются эти ошибки? Когда я пытаюсь создать заказ на бэкенде, я все еще вижу ту же страницу с ошибкой: Server 500 error: The website encountered an error while retrieving http://mydomain.localhost/index.php/admin/sales_order_create/start/key/372b9af2b85fa77c27c46e7106506af4/. It may be down for maintenance or configured incorrectly., и я все еще вижу ту же ошибку, упомянутую в моем вопросе в журнале сервера. - person Miles Pfefferle; 16.10.2012
comment
Странно, я не вижу ни одного файла/папки с именем report в /var/ - person Miles Pfefferle; 17.10.2012
comment
Создайте его и убедитесь, что он доступен для записи исходного кода Magento. - person satrun77; 18.10.2012