|
|
|
подскажите как организовать
|
|||
|---|---|---|---|
|
#18+
в базе храниться инфа в виде дерева(+ атрибуты в отдельных таблицах), нужно реализовать возможность редактировать это дерево из UI(web), но чтобы изменение произошло только после нажатия на кнопку применить... пока придумал 1) создать отдельные таблицы в которых будут храниться редактируемые версии(- дополнительные таблицы, копипаст части функционала на осн и времен табл) 2) во все таблицы добавить флаг is_active, при редактировании создавать полную копию дерева с сохранением ID нод, но проставить is_active=0(-лишнее поле,не уникальные ID, +удобно) 3) создавать копию дерева с генерацией новых ID, дополнительно сохранять соответсвие ID узла в рабочей версии и ID узла временой версии, после нажатия кнопки применить апдейтить ID узлов временной версии(минусов особо не вижу, но интуиция говорит что то тут не то) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2008, 11:36 |
|
||
|
подскажите как организовать
|
|||
|---|---|---|---|
|
#18+
тыцв базе храниться инфа в виде дерева А как дерево-то хранится? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2008, 11:54 |
|
||
|
подскажите как организовать
|
|||
|---|---|---|---|
|
#18+
Если есть возможность *не* записывать изменения в базу до полного подтверждения действия - наверное лучше так и сделать (запоминать изменения на клиенте/апп-сервере). Иначе усложняется структура базы и логика практически на ровном месте. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2008, 21:40 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=35213471&tid=1543966]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
163ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
28ms |
get tp. blocked users: |
1ms |
| others: | 215ms |
| total: | 434ms |

| 0 / 0 |
