переиндексация сайта после изменения структуры (поиск), куда копать

ustas

Элекомист №1
переиндексация сайта после изменения структуры (поиск), куда копать

структура

страницы
|-Главная доступна для всех
---|-Node 1 права для зарегистрированных
---|-transactions права для агентов
------|-sales права для продавца + права владельца + права на детали сделки

по запросу /transactions/sales/finish/136297
из бд выборка схемы выдачи информации (тип, ид, ссылки) и необходимых модулей, модули формирую и записывают сделку и выводят инфу + детали, если прав хватает.

поисковый индекс формируется в момент сделки, для просмотра, и отдельно по деталям и историей с указанием transaction/sales/closed/782735
все работает, как и нужно.

ж@па получается когда страница, по правилам которой идет вывод отчётности (тип, ид, ссылки) удаляется, а в будущем работа возобновляется по другому адресу.
При поиске выдаст старый адрес, а там 404.
Или же изменяются права доступа к такой информации

Вот думаю добавлять ид схемы+статус(искать, пропускать) в индекс, убивать ссылку на страницу в индексе, а при возобновлении по другому адресу по ид схемы заносить новый адрес страницы. Или убивать, а потом переиндексацию по схеме делать(гемор на мой взгляд)?
А в случае изменения прав на чтение страницы, в поисковом индексе менять и их.

Смотрел в других кмсках, но как правило там привязка жесткая к модулю.
Кто нибудь реализовывал нечто похожее? С каким подходом гемороя меньше будет?
зы
в typo3 еще посмотрю, вроде у них что то похожее наблюдал.
 

Фанат

oncle terrible
Команда форума
вроде, по-русски написано, а смысл ускользает.
 

Pigmeich

Новичок
ustas
Те реализации которые я видел, в таких случаях, предусматривали механизм отката вторичных записей.

То бишь, у тебя есть первичная информация, на основе которой пишется в БД вторичная, так?
1. Автоматизированный вариант - в каждую таблицу вторичной информации записывать ссылку на первичную. При изменении первичной информации, просто удалять все записи указывающие на данную, и писать вторичную информацию занова.
2. С MC (Monkey coding) зато может быть быстрее. Просто описываем процедуру отката, которая исправляет неактуальную вторичную информацию.
3. Ввести дополнительный флажок и по нему определять какую схему использует модуль.
 

ustas

Элекомист №1
Pigmeich
склоняюсь к 3) только модули без схемы друг друга не знают.
*****
страница - это документ, журнал и т.п.
документ содержит дополнительную важную текстовую информацию, которую нужно находить поиском при наличии прав к этой инфе. Так как документ виртуальный (только просмотр) он может быть удален, в отличие от торговых систем, и восстановлен в будущем. только вот куда ссылатся поиск будет? вот и склоняюсь что ид схемы нужно с индексом хранить.

-~{}~ 28.12.07 10:29:

Pigmeich
Просто описываем процедуру отката, которая исправляет неактуальную вторичную информацию.

отката быть неможет, деньги уплачены, можно только возврат, что бы востановить справедливость:)
 
Сверху