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

Модуль изображения

  • 13 июля 2015 г.
  • Как можно добавить картинки с помощью модуля "Изображения" к тип данных отличных от element, cat, brand ?
    Т.е. задача добавить свой тип элементов при создании модуля с возможностью "прицеплять" к нему картинки.
  • 14 июля 2015 г.
  • Нужно изменить таблицу картинок, добавив там вариант например "some_tag"
    SQL запрос в базу данных
    Код
    ALTER TABLE `diafan_images`
    CHANGE `element_type` `element_type` enum('element','cat','brand','some_tag') COLLATE 'utf8_general_ci' NOT NULL DEFAULT 'element' COMMENT 'тип элемента модуля'
  • 20 июля 2015 г.
  • волшебная пилюля не помогла. Результатом является ошибка : "Некорректно задан тип элемента.". Непонятно зачем разработчики настолько усложнили добавление картинок

    Вот корень проблемы, но как ее решить и зачем вообще эта валидация не понятно.

    /**
    * Валидация типа элементов
    *
    * @return void
    */
    private function check_element_type($element_type)
    {
    if(! in_array($element_type, array('element', 'cat', 'brand')))
    {
    throw new Exception($this->diafan->_('Некорректно задан тип элемента.'));
    }
    }
    • 20 июля 2015 г.
    • Зачем разработчики усложнили? Для оптимизации работы БД и скорости работы системы. И вот результаты http://www.diafan.ru/highload/

      Вы опишите, что Вам нужно-то? Какой тип и зачем?

      И если Вы выяснили корень проблемы, почему в 'element', 'cat', 'brand' не добавить через запятую 'yourtype'?
  • 20 июля 2015 г.
  • Задача следующая, создать модуль который выводит проекты, при этом картинки надо привязывать к следующим элементам:
    1)проектам
    2)исполнителям
    3)заказчикам
    4)категориям

    И вот тут возникает вопрос, как это правильней сделать, если доступны только три типа,

    добавить конечно можно, но
    1) не приведет ли это к каким либо ошибкам в работе
    2) каким образом можно интегрировать в созданный модуль, распространять и быть уверенным, что он будет стабильно работать после обновлений и т.п. поскольку по факту будут внесены изменения в модуль images
    • 20 июля 2015 г.
    • Вы сами себя в тупик не загоняйте!
      Тип element - это и отдельный товар, и новость, и сообщение на форуме, и исполнитель и проект и заказчик. А категория - cat. То есть то, что в рамках одного модуля может иметь одинаковый id. Поэтому для магазина есть отдельный тип brand. Весь фокус в функции, получающей картинку, указывается её "адрес": модуль, id того, к чему она прикреплена и тип того, id которого ищется. Говорим "дай картинки, прицепленные к модулю магазина для id=5" и это может быть категория, товар или бренд, поэтому указывается element или cat.
      У Вас я не знаю, как Вы задумали структуру БД, но категории - это ясно что тип cat. И в категориях будут проекты - это явно тип element. Всё ;-)
      Спросите про исполнителей и заказчиков? Это другой модуль уже, который просто цепляется к проектам, и в нем и те и другие будут также типа element. ;-)
      • 21 июля 2015 г.
      • может немного не в тему, но в модуле images в таблице
        {images} поле module_name имеет тип varchar(10) ,
        в то время, как {modules} поле module_name имеет тип varchar(30),
        а в {config} поле module_name имеет тип varchar(12)

        Получается нельзя добавить картинки для модулей с названием больше 10, настройки для модулей с названием больше 12.
        • 21 июля 2015 г.
        • Об этом уже писалось не раз в предложениях и ошибках и не только мной. Но почему-то эта проблема решается выборочно а не по всей базе данных. Это несёт проблемы характера что чтото гдето работает а гдето не работает потому что гдето чтото обрезалось и не соответствует запрашиваемым данным или тупо не записалось потому что данные тупо не влезли.

          Виталий пожалуйста возьми этот вопрос на личный контроль. Проработайте таблицы приведите к общему размеру соответствующие поля таблиц.

Новости

  • 12 января
  • После выхода сборки 7.1 мы выпустили уже три патча, в каждом из которых улучшаем административную часть сайта. Сборка DIAFAN.CMS 7.1.3 уже доступна к установке. 
  • 15 декабря 2023 г.
  • Подводим итоги 2023 года. Выпустили новую сборку DIAFAN.CMS 7.1.1, вводим новые тарифы на аренду сайта и коммерческую поддержку и автообновления с января 2024 г., строим планы на будущий год.
  • 25 июля 2023 г.
  • Выпустили очередную сборку DIAFAN.CMS 7.0.1. Она уже доступна к установке.

Блоги

  • 15.12.2023
  • В новой сборке DIAFAN.CMS 7.1.1 мы расширили функциональность баннеров, уделили внимание YML-фиду для Яндекс.Маркет, улучшили “Настройки шаблона”, оформили модуль лога действий и разработали “Заметки” для пользователей административной части сайта. Также проработали замечания и предложения наших пользователей, исправили несколько ошибок.

Форум