Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

smotrikov

Новачок
  
  • Публікації

    9
  • З нами

  • Відвідування

Повідомлення, опубліковані користувачем smotrikov

  1. вот ссылка http://yadi.sk/d/8RcmuMytRntYm

    ясн. Можете сделать все на php через fgetcsv  (есть как объектная реализация , так и процедурная ) Или вы ищите исполнителя ?

  2.  

    "_ID_";"_NAME_";"_MODEL_";"_CATEGORY_";"_SKU_";"_PRICE_";"_IMAGE_"
    1;"Kukla";"2937950000010";1;"";200;1  
     
    Это пример выгрузки одного товара,формат файла trs

     

    так это csv (очень похоже во всяком слкчае) , а можно цельный файл ?

  3. По диапазонам со строковыми типами данных работать мягко говоря не просто, если не сказать невозможно (а проблема ОС именно в том, что все значения атрибутов - строчные). Возможно вы не тот движок выбрали для вашей задачи. Есть движок, у котором логика атрибутов совершенно иная и там есть возможность задавать любое количество атрибутов товара с разными типами данных.

    Согласен полностью , но выбор был не велик , на фирме до меня приобрели shop-script 5  (посмотрел я его и впал в ужас, сам фрэймворк вебасист вроде и не плохой ,документация хорошая ... НО под него что бы писать много времени надо на изучение устройства движка и .тд) ,поэтому выбрал opencart , так как раньше с ним немного работал + юзал codeigniter . Если бы атрибуты вводились в ручную было бы иначе , но весь товар парситься через catalogloader  (логику таблиц менять нельзя )

     

    Как вариант разбить этот атрибут на 2: "От" и "До", после чего на странице товара для более удобного отображения собрать в 1.

    И решиться проблема с поиском.

    Уже продумываем вариант подобной реализации .Вообщем если удастся решить проблему -обязательно выложу решение )

     

     

    Всем спасибо большое !

  4. Почему нельзя в сам запрос добавить attribute_id? Это очень существенно уменьшит выборку + это первичный ключ, уже проиндексированный, поиск по нему быстрый.

    + можно создать индекс по полю 'text', после чего искать или по точному совпадению или по вхождению в начало: LIKE 'для ЖК%', тогда эти индексы будут использоваться

    Логичный и очень правильный вариант, удивляюсь почему в самом движке так не сделано.

    Но для этого нужно очень много кода переписать в самом движке, везде, где есть работа с атрибутами + потом поддерживать все это при смене версий движка.

    А вообще написание своего фильтра это очень трудоемкое занятие. Фильтр это достаточно сложный модуль с сложным кодом. Это только на первый взгляд кажется что это просто и напишется за 2 вечера )) А реально на написание нормального фильтра уйдет десятки часов.

    Лучше взять какой-то готовый фильтр (есть и бесплатные модули) и переделать его под себя.

    Это конечно все хорошо и таким способом наименьшие потери будут (на время и разработку ) но есть атрибуты типа :  26 - 55" - одна строка, и так для каждого товара , как сделать поиск по диапазону ,снова like .Сомневаюсь за точность  

  5. Доброго времени суток ! Всплыла следующая проблема , как реализовать фильтры на этом движке  ? Задача не является чем-то из области фантастики ,однако проблема в следующем : в БД (в таблице product_attribute )  храниться около 1 500 000 записей ,и под одним attribute_id храниться разный текст ( + пока не ясно как фильтровать в атрибутах по диапазону).Прилагаю скрин.

    В плане написать на php фильтры не составляет никакого труда , однако использовать id атрибута не возможно , like заметно тормозит  + не очень и точный .Вариант переделать логику этих атрибутов - мне кажется самым приемлемым. Возможно вместо (`text`) вносить id текста , а сам текст атрибута вынести в другую таблицу (и сделать уникальным)  ,что позволит в 100-ни раз уменьшить эту таблицу ,так как сейчас она 70 мб.Возможно кто-то сталкивался таким ,или на свежую голову предложит решение  ?Заранее спасибо

     

    post-683556-0-10473500-1401397770_thumb.jpg

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.