2015-03-30 4 views
0

Я проиндексировал сущность. Он имеет много аспектов. Ниже сущность ...Является ли поиск Solr способным фильтровать данные в возвращаемых результатах SOLR-документах?

Entity: Лицо

Однозначная фаска: Имя

многозначных Грани: марка, роль, разрешение

Пример:

Person { id, имя, марка, роль, разрешение}

Наименование: Person1

марка: В1, В2, В3

Роль: R1, R2, R3,

Разрешение: Р1, Р2, Р3

У меня 2 пользователей в моей системе. Пользователь U1 и U2.

Когда я выполняю поиск Solr для поиска Имя человека как «Person1», этот документ возвращается.

Теперь я хочу фильтрацию данных документа, когда этот документ возвращается в результате поиска solr.

Пользователь U1 имеет разрешение просматривать только Бренд B1, и ему не следует просматривать Бренд B2 и B3.

Пользователь U2 имеет разрешение на просмотр только марки B3, ему не следует просматривать бренды B1 и B2.

То же самое касается других многозначных граней. Можно ли фильтровать данные таким образом?

+0

Что делать с булевым отфильтрованным запросом в поле «разрешение» следующим образом (для пользователя U1): fq = (разрешение: B1 И НЕ (разрешение: B2 ИЛИ разрешение: B3))? – Zouzias

ответ

0

Нет, не существует готового решения. Google для «solr acl» вы найдете, например, this. Также посмотрите на это question.