Автор Тема: Ошибка подтверждения заказа  (Прочитано 620 раз)

08 Июль 2014, 15:13:31
  • Новичок
  • *
  • Сообщений: 48
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
При подтверждении заказа (менял условия обязательных полей при регистрации) стала появляться ошибка  Property Order->module is not valid at line 837 in file classes/ObjectModel.php
Перезалил базу. Не помогло.
Версия Prestashop 1.5.6
08 Июль 2014, 15:20:09
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 33069
  • Репутация: +26762/-0
    • Просмотр профиля
Не проходит проверку обязательное поле в каком-то модуле. Проверяйте поля, которые меняли.
Prestashop FAQ: Как включить показ ошибок
08 Июль 2014, 15:29:35
Ответ #2
  • Новичок
  • *
  • Сообщений: 48
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
А есть способ узнать какие поля точно проходят валидацию? Или возможно исключить некоторые поля из валидации или вообще её обойти?
Из Локализация ->Страны ->"Конкретная страна" оставил только: lastname, firstname, Castomer:email, Country:name, city, address1, phone_mobile.
В Address.php и Customer все перевел на false.
08 Июль 2014, 16:44:38
Ответ #3
  • Новичок
  • *
  • Сообщений: 48
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Не проходит проверку обязательное поле в каком-то модуле. Проверяйте поля, которые меняли.
Prestashop FAQ: Как включить показ ошибок


Проверил. Вернул назад. То же самое.
08 Июль 2014, 16:48:19
Ответ #4
  • Ветеран
  • *****
  • Сообщений: 1047
  • Репутация: +3/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Ошибки какие показало?
08 Июль 2014, 17:09:02
Ответ #5
  • Новичок
  • *
  • Сообщений: 48
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Ошибки какие показало?


Property Order->module is not valid
at line 837 in file classes/ObjectModel.php

831.
832. $message = $this->validateField($field, $this->$field);
833. if ($message !== true)
834. {
835. if ($die)
836. throw new PrestaShopException($message);
837. return $error_return ? $message : false;
838. }
839. }
840.
841. return true;

ObjectModelCore->validateFields - [line 255 - classes/ObjectModel.php] - [0 Argument]
ObjectModelCore->getFields - [line 277 - classes/order/Order.php] - [0 Argument]
OrderCore->getFields - [line 455 - classes/ObjectModel.php] - [0 Argument]
ObjectModelCore->add - [line 282 - classes/order/Order.php] - [2 Arguments]
OrderCore->add - [line 263 - classes/PaymentModule.php] - [0 Argument]
PaymentModuleCore->validateOrder - [line 30 - modules/advancedcheckout/controllers/front/validation.php] - [9 Arguments]
advancedcheckoutvalidationModuleFrontController->postProcess - [line 158 - classes/controller/Controller.php] - [0 Argument]
ControllerCore->run - [line 348 - classes/Dispatcher.php] - [0 Argument]
DispatcherCore->dispatch - [line 28 - index.php] - [0 Argument]
08 Июль 2014, 17:38:43
Ответ #6
  • Ветеран
  • *****
  • Сообщений: 14070
  • Репутация: +14569/-2
  • Сообщество PrestaShop
    • Просмотр профиля
Цитировать
$message = $this->validateField($field, $this->$field);
Вспоминайте, что и гда меняли, или ставьте стандарную тему и базовые классы и контроллеры.
 
08 Июль 2014, 17:42:43
Ответ #7
  • Новичок
  • *
  • Сообщений: 48
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Цитировать
$message = $this->validateField($field, $this->$field);
Вспоминайте, что и гда меняли, или ставьте стандарную тему и базовые классы и контроллеры.

А есть способ узнать какие поля точно проходят валидацию? Или возможно исключить некоторые поля из валидации или вообще её обойти?
Из Локализация ->Страны ->"Конкретная страна" оставил только: lastname, firstname, Castomer:email, Country:name, city, address1, phone_mobile.
В Address.php и Customer все перевел на false.
08 Июль 2014, 18:04:21
Ответ #8
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86543
  • Репутация: +25419/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Все указано в шаблоне страницы и классе.
Например, для адреса шаблон address.tpl, все поля у которых указано
<p class="required"><sup>*</sup>{l s='Required field'}</p>и
class="is_required validate"класс Address.php, все поля, у которых указано
required' => true
http://prestashop-forum.ru/index.php/topic,945.msg8104.htm
http://prestashop-forum.ru/index.php/topic,608.msg2884.htmll
09 Июль 2014, 00:32:36
Ответ #9
  • Новичок
  • *
  • Сообщений: 48
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Все указано в шаблоне страницы и классе.
Например, для адреса шаблон address.tpl, все поля у которых указано
<p class="required"><sup>*</sup>{l s='Required field'}</p>и
class="is_required validate"класс Address.php, все поля, у которых указано
required' => true
http://prestashop-forum.ru/index.php/topic,945.msg8104.htm
http://prestashop-forum.ru/index.php/topic,608.msg2884.htmll


Я сносил сайт (благо я изменения всегда вношу только локально, и лишь затем - на боевом), ставил по новой из бэкапа прошлой недели, я заливал по новой базу. Несколько раз.
Изменений последних дней нет и в помине.
Но ошибка одна и там же.
На боевой версии без самых последних мучений все работает без ошибок.
Мне кажется я начинаю сходить с ума.
Как возможно такое?!
09 Июль 2014, 11:26:58
Ответ #10
  • Ветеран
  • *****
  • Сообщений: 14070
  • Репутация: +14569/-2
  • Сообщество PrestaShop
    • Просмотр профиля
Если форма заказа изменена в сохраненной копии, значит изменения есть.
Очистите кеш и поверьте. Сравните конф.серверов.
09 Июль 2014, 18:30:54
Ответ #11
  • Ветеран
  • *****
  • Сообщений: 33069
  • Репутация: +26762/-0
    • Просмотр профиля
В админке в Расширенные параметры > Информация проверьте какие файлы были изменены.
09 Июль 2014, 21:00:50
Ответ #12
  • Новичок
  • *
  • Сообщений: 48
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Если форма заказа изменена в сохраненной копии, значит изменения есть.
Очистите кеш и поверьте. Сравните конф.серверов.

Простите, что означает "Сохраненная копия", если я из бэкапа восстанавливал? Как очистить кеш правильно? Я чистил и кеш сайта и браузеров. Видимо, не так как надо.
Наверное вы правы, потому что даже после всех сносов форма регистрации выглядит немного иначе, че мна боевом сайте.
09 Июль 2014, 21:05:39
Ответ #13
  • Новичок
  • *
  • Сообщений: 48
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В админке в Расширенные параметры > Информация проверьте какие файлы были изменены.

Я честно говоря недавно престой занимаюсь, не знаю, где "расширенные параметры", подскажите.
"Конфигурация" -> "информация" -> "Список измененных файлов" их 581, потому что я сайт из бекапа заливал.
До этого мне ГИТ показывал цветом измененные файлы, я отменял там изменения пока ГИТ не показывал, что откат произошел.
10 Июль 2014, 13:30:19
Ответ #14
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86543
  • Репутация: +25419/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Перед изменениями делаете полный архив, файлы и бд.
При восстановлении сносите все старый файлы и закачиваете файлы их архива. С базой то-же самое, удаляете все таблицы и восстанавливаете из архива.
А то что вы делаете откат на старую версию, это только частично заменяет файлы, ошибки могут оставаться.