Перейти к содержимому


Фотография
- - - - -

JBZoo Search: нулевые значения в слайдере

jbzoo search слайдер

Лучший Ответ SmetDenis , 09 January 2015 - 10:50

Не заполенное поле цены не участвует в поисковом индексе.

По сути вам нужно вот это
http://forum.jbzoo.c...-jbmarketplace/

Какую версию JBZoo вы используете? Перейти к сообщению


  • Закрытая тема Тема закрыта
Сообщений в теме: 5

#1 user_smirnovbel

user_smirnovbel

Отправлено 07 January 2015 - 19:16

     Столкнулся с проблемой при использовании автоматической установки минимального и максимального значения в слайдере фильтра JBZoo Search. Эта функция очень удобна и наглядна, но не учитывает нулевое значение поля: фильтр JBZoo Search игнорирует его и не включает ни в сам фильтр, ни в выдачу записи с нулевым значением поля (как, собственно, и с пустым его значением).

     Например, на сайте недвижимости у объявления с квартирой площадь участка равна нулю, но, если оставить это поле пустым или указать там значение 0, фильтр отказывается видеть эту запись. Ставлю туда 1 - все работает, но это не есть правильно. 

     Подскажите, как обойти это? Сайт a.flowersbel.ru


  • 0

#2 SmetDenis

SmetDenis

Отправлено 09 January 2015 - 10:50   Лучший Ответ

Не заполенное поле цены не участвует в поисковом индексе.

По сути вам нужно вот это
http://forum.jbzoo.c...-jbmarketplace/

Какую версию JBZoo вы используете?
  • 1
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#3 user_smirnovbel

user_smirnovbel

Отправлено 09 January 2015 - 14:08

Попробую...

Если хак поможет, то это будет даже лучше чем нулевое значение.

 

Версии: JBZoo: 2.1.5 Pro (build 1)     Zoo: 3.3.1

 

НО!

Цены все заполнены.

Поиск идет по числам в текстовых полях (например, в слайдере "площадь участка, соток").

Если поле пустое или там стоит 0 - запись из поиска выпадает, а наименьшее значение автоматом ставится минимальное, но отличное от нуля из базы данных.

Если в поле поставить любое значимое число (пробовал 1, пробовал 0.1) - поиск работает нормально.

Видимо, при преобразовании текст-число цифра 0 рассматривается как отсутствие значения NULL, а это для числовых значений неверно, ведь 0 - тоже значение. Либо в дальнейшей обработке 0 от Null не отличается...

 

Сейчас в БД есть 20 элементов, из них:

1) 5 элементов со значением площади участка 0.1, 1, 22, 25

2) 1 элемент с пустым значением площади участка

3) 14 элементов с площадью участка 0

Все остальные поля всех элементов (тип поля text) заполнены положительными целыми числами

В фильтр при любом запросе попадают элементы только из пункта 1, все остальные игнорируются.

При сбросе фильтра также остаются только 5 элементов из пункта 1.


Сообщение отредактировал user_smirnovbel: 09 January 2015 - 16:03

  • 0

#4 user_smirnovbel

user_smirnovbel

Отправлено 09 January 2015 - 15:57

Хак не помог, работа сайта ничуть не изменилась.

Все равно в выборке участвуют только те записи, в которых нет нулевых или пустых полей.

Элементы с пустыми или нулевыми значениями поля "Площадь участка" фильтр игнорирует.

Даже при сбросе фильтра остались только 5 элементов со значением площади участка больше 0. 


  • 0

#5 tapakan

tapakan

Отправлено 09 January 2015 - 18:45

Здравствуйте.

Попробуйте в файле 

media\zoo\applications\jbuniversal\framework\models\jbmodel.values.php

Закомментировать следующую строку.

445c0f66_s.jpg


  • 1

#6 user_smirnovbel

user_smirnovbel

Отправлено 09 January 2015 - 21:26

Спасибо, SmetDenis, tapakan!

 

Хак от SmetDenis все же помог, я, дурень, перед проверкой забыл обновить индекс...

 

tapakan, в хаке от SmetDenis эта строка как раз закомментинована!


  • 0





Темы с аналогичным тегами jbzoo search, слайдер

Click to return to top of page in style!