Доброго дня, есть таблица товаров, свойств, а также таблица с полями "id товара", "id свойства", "значение свойства".
Нужно выводить отдельную форму с фильтрами по свойствам.
Все бы ничего, но в dropBox'ах необходимо выводить значения, только те, по которым есть товар.
Соответственно нужно перебрать в цикле все модели, а не только те, которые есть на текущей странице, чтоб выкупить доступные значение свойств.
Работает долго уже на 500 товарах. Понимаю что задача тривиальная, а я решаю её не правильно.
Подскажите как?
Медленно работает фильтр товаров
- Dominus
- Сообщения: 892
- Зарегистрирован: 2013.03.14, 21:27
- Откуда: Россия, Иваново
- Контактная информация:
Re: Медленно работает фильтр товаров
Не спорь с дураком, иначе окружающие не правильно поймут кто из вас дурак!
Re: Медленно работает фильтр товаров
Сформировать запрос к БД, и получить только нужные модели
Не желайте странного, и не будет у вас головной боли чтобы достичь этого странного.
Тем более что окажется что оно вам и не нужно было, странное это.
Тем более что окажется что оно вам и не нужно было, странное это.
Re: Медленно работает фильтр товаров
Не увидев код, можно только гадать. Как вариант, переобход всех свойств идёт в представлении. В данной ситуации нужно вынести логику из представления в модель.
Работать должно элементарно.
Вызывается action, дальше идёт в модель и формирует необходимую нам информацию в соответствии с тем, что было в action.
Например, была выбрана категория товаров "Мебель". В модели категории выбираем все товары, которые есть и их свойства. Для примера формирует массив. Возвращаем массив в контроллер, а дальше из него передаем в представление. А в представлении уже только отображаем информацию так, как нам её вернул контроллер.