Форма администратора Magento не сохраняет десятичные значения с помощью decimal

#magento #magento-1.7

#magento #magento-1.7

Вопрос:

Для одного из моих пользовательских модулей у меня есть следующий сценарий установки sql

 $installer = $this;

$installer->startSetup();

$installer->run("


    CREATE TABLE {$this->getTable('wholesale')} (
      `wholesale_id` int(11) unsigned NOT NULL auto_increment,
      `title` varchar(255) NOT NULL default '',
      `percentage` float(5,3) NOT NULL,
       `status` smallint(6) NOT NULL default '0',
      `created_time` datetime NULL,
      `update_time` datetime NULL,
      PRIMARY KEY (`wholesale_id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

        ");

    $installer->endSetup(); 
 

Значение, переданное этому проценту `float(5,3) NOT NULL, столбец сохраняется с десятичной запятой, но всегда с 00, например. Если я сохраню значение 10.23, оно сохранится в базе данных как 10.00.

Пожалуйста, помогите

Комментарии:

1. Привет, у нас такая же проблема, с которой вы столкнулись. Итак, не могли бы вы рассказать нам, как это можно исправить? Ожидание ответа.

2. @user2393886 Как я уже упоминал в своем ответе, я обрезал таблицу и вставил первую запись вручную, используя phpmyadmin. Затем, после того, как я сохранял данные, используя форму пользовательского модуля, это сработало для меня.

3. @user2393886 Ответьте, если это работает для вас.

Ответ №1:

Я столкнулся с той же проблемой. После очистки кэша с помощью «Очистить кэш Magento» он начал правильно сохраняться. В моем случае я изменил столбец, и он кэшировался.

Ответ №2:

Я обрезал таблицу и вставил одну запись вручную, и у меня это сработало. Я не уверен, почему это произошло, но это сработало для меня.