Создание фильтров
От: Darkman_VLT Россия  
Дата: 16.03.06 04:45
Оценка:
Скажем в базе данных существуют таблицы (они же описывают некие обьекты, либо части обьектов):
table1
* id1
type1 col2
type1 col3

table2
* id1
type2 col2
type2 col3

table3
* id
type3 col2

Стоит задача написать общий механизм "фильтров". Что бы можно было применить фильтр на любом другом объекте:

К примеру, создать такое правило: данный обьект валиден, если имеется ((table1.id=X) and (table2.id=Y)) or (table2.id=Z AND table3.id=X1)

Простой способ реализации мне в голову прищёл такой:
filter.filters
*filter_id

filter.items
*item_id
fk_filter_id
table1_group_id
table2_group_id
table3_group_id
...столько, сколько у нас таблиц

table1_groups
*table1_groups_id
table1_group_id
f_col2
f_col3
...
и так далее..
Как по мне, очень не удобный способ, точнее его можно применять, если обьектов не много.
Но уже когда их кол-во приближается к 80ти становится страшнова-то.


Не подскажите ли, как бы данную проблему решить?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.