Лучшая схема для поиска предметов по нескольким критериям

Я создаю веб-сайт с использованием Symfony2 и хочу, чтобы мои пользователи видели список элементов в соответствии с их профилем. Я ищу лучший способ сделать это.

У пользователей есть основные поля, прикрепленные к их профилю (имя, адрес электронной почты и т. Д.), Но я хочу добавить определенную информацию: пол, доход, интересы (такие разные типы: bool, integer, string и т. Д.). Некоторые поля и значения могут быть добавлены, изменены или удалены позже.

Элементы будут иметь критерии, так что они будут показаны соответствующим пользователям в соответствии с профилем пользователей.

На самом деле это немного похоже на торговый сайт с информацией, прикрепленной к продуктам, и тогда клиент может уменьшить количество отображаемых товаров благодаря списку критериев.

Я думал о том, чтобы поместить массив с различными критериями и значениями в сущность User, но я считаю это решение действительно плохим.

У вас есть представление о том, что может быть лучшей схемой Entity / DB для этого?

-1

Решение

Это фильтрация, ваш запрос, который вы используете, чтобы получить ваш продукт, — это тот, который вы должны играть, а не пользователь.

Как я понял, вы хотите показывать разные продукты каждому пользователю в зависимости от его пола и т. Д.

Вам понадобится какая-то ссылка, чтобы узнать, какой продукт показать какому пользователю? Какую информацию вы хотите проверить на стороне продукта? у вас может быть объект, связанный с продуктом, с другой информацией, например, мужской пол, для продукта, который вы будете использовать в своем запросе, чтобы получить все select * from product where product.criteria.gender = user.gender это просто упрощенный запрос, но он немного сложнее с объединением, если вы хотите сделать это в SQL или DQL

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]