Вход • Регистрация

Checkbox в админке.

  • 04 декабря 2016 г.
  • Добрый день. Прошу подсказать, хочу добавить checkbox в административной части, в карточке добавления товара, а так же еще одно поле в таблицу diafan_shop_price. Т.е. если галочка стоит, то значение поля - 1 если нет - 0. Для этого в shop_admin добавил
    Цитата
    public $variables = array (
    'main' => array (
    'simply_goods' => array(
    'type' => 'checkbox',
    'name' => 'Тест',
    'help' => 'Тест',
    ),

    С помощью запроса добавил поле ALTER TABLE `diafan_shop_prices` ADD `simply_goods` ENUM('0', '1') NOT NULL DEFAULT '0';
    Поле в таблице добавилось, так же добавился checkbox в карточке добавления товара, но при добавлении товара, нажав кнопку Сохранить, получаю следующее
    Цитата
    [ERROR#1]
    Unknown column 'simply_goods' in 'field list'
    #1 trigger_error(Unknown column 'simply_goods' in 'field list', 512) called at [C:\xampp\htdocs\prazdnikvsem\includes\database.php:697]
    #2 DB::_query(UPDATE `diafan_shop` SET `name1`='Товар с одной ценой', no_buy='0', `simply_goods`='0', `article`='', `measure_unit1`='', cat_id=1, `brand_id`='0', `hit`='0', `new`='0', action='0', an...) called at [C:\xampp\htdocs\prazdnikvsem\includes\database.php:147]
    #3 DB::query(UPDATE {shop} SET `name1`='%h', no_buy='%d', `simply_goods`='%d', `article`='%h', `measure_unit1`='%h', cat_id=%d, `brand_id`='%h', `hit`='%d', `new`='%d', action='%d', anons_plus1='%d', anons1='%s', ...) called at [C:\xampp\htdocs\prazdnikvsem\adm\includes\save.php:168]
    #4 Save_admin->save() called at [(null):0]
    #5 call_user_func_array(Array(...), Array(...)) called at [C:\xampp\htdocs\prazdnikvsem\adm\includes\frame.php:148]
    #6 Frame_admin->__call(save, Array(...)) called at [(null):0]
    #7 Shop_admin->save() called at [(null):0]
    #8 call_user_func_array(Array(...), Array(...)) called at [C:\xampp\htdocs\prazdnikvsem\adm\includes\init.php:192]
    #9 Init_admin->__call(save, Array(...)) called at [C:\xampp\htdocs\prazdnikvsem\adm\includes\frame.php:189]
    #10 Init_admin->save() called at [C:\xampp\htdocs\prazdnikvsem\adm\includes\frame.php:189]
    #11 Frame_admin->init() called at [C:\xampp\htdocs\prazdnikvsem\adm\includes\init.php:462]
    #12 Init_admin->module() called at [C:\xampp\htdocs\prazdnikvsem\adm\includes\init.php:105]
    #13 Init_admin->init() called at [C:\xampp\htdocs\prazdnikvsem\adm\index.php:31]
    #14 include_once(C:\xampp\htdocs\prazdnikvsem\adm\index.php) called at [C:\xampp\htdocs\prazdnikvsem\index.php:44]
    • 04 декабря 2016 г. , редакция: 04 декабря 2016 г.
    • Ответ прост.
      Цитата
      Для этого в shop_admin добавил
      То есть добавили в описание таблицы SHOP.
      Цитата
      С помощью запроса добавил поле ALTER TABLE `diafan_shop_prices` ADD `simply_goods` ENUM('0', '1') NOT NULL DEFAULT '0';
      А поле добавили в таблицу SHOP_PRICE

      Соответственно получили ошибку.

      Успехов.
      • 04 декабря 2016 г.
      • Тут я немного не точно написал, имелся ввиду файл shop_admin.php
        • 04 декабря 2016 г. , редакция: 04 декабря 2016 г.
        • Цитата
          Тут я немного не точно написал, имелся ввиду файл shop_admin.php
          Я догадался, ответ тот же. Вы добавили названия поля для одной таблицы (таблица называется "shop"), а физически поле добавили в другую таблицу (таблица называется "shop_price").
  • 04 декабря 2016 г.
  • Здравствуйте!

    Просто создайте общую характеристику и выведите ее в шаблоне куда надо http://www.diafan.ru/dokument/full-manual/examples/extra-goods-prop/
    • 04 декабря 2016 г.
    • Нет, тут немного другой смысл. Планирую, что бы при добавлении товара в админке, пользователь ставил (или не ставил) галочку рядом с ценой. Соответственно наличие этой галочки влияет в дальнейшем на цену товара. Поэтому смысл в том, что если галочка стоит, то в таблице shop_price, в поле simple_goods стояло значение 1 если нет, то 0, для формирования правильного sql запроса под задачу. Сейчас нужное поле есть, в админке чекбокс есть, но при добавлении товара - ошибка.
  • 04 декабря 2016 г. , редакция: 04 декабря 2016 г.
  • А вообще, непонятно, разрешает добавить столбец в таблице shop, но если добавляю его в shop_price, то выдает ошибку.

Новости

  • 18 июня
  • В сборке большое обновление demo-шаблона, дополнительная защита от спама, улучшение YML-импорта и еще много важного и интересного.
  • 24 апреля
  • В новой сборке совершили революцию в структурировании кастомизированной информации в шаблонах, добавили авторегистрацию пользователей, усовершенствовали защиту от спама, актуализировали накопительную скидку, а также улучшили производительность и стабильность работы системы.
  • 12 января
  • После выхода сборки 7.1 мы выпустили уже три патча, в каждом из которых улучшаем административную часть сайта. Сборка DIAFAN.CMS 7.1.3 уже доступна к установке. 

Форум