Tartyga
Новичок
Как лучше организовать получение документа по ЧПУ с возможностью хранения документов с идентичными псевдонимами, но разными "родителями"?
Например:
/parent_1/item_1
/parent_2/item_1
/parent_3/parent_3_1/item_1
Пока вижу два варианта:
1. Хранить полный путь к документу
плюс: относительно быстрый поиск документа, легкая генерация (в шаблоне) ссылки по id документа
минус: при изменении псевдонима у родителя придется обновлять у всех детей, их детей и т.д.
2. Получение документов по псевдониму и если более одного документа исключать по родителю.
плюс: храним только небольшой псевдоним
минус: возможно много итераций, например:
/parent_1/parent_a/parent_b/parent_c/.../item
/parent_2/parent_a/parent_b/parent_c/.../item
Еще можно как второй вариант, только выборку делать от родителя к ребенку.
Например:
/parent_1/item_1
/parent_2/item_1
/parent_3/parent_3_1/item_1
Пока вижу два варианта:
1. Хранить полный путь к документу
плюс: относительно быстрый поиск документа, легкая генерация (в шаблоне) ссылки по id документа
минус: при изменении псевдонима у родителя придется обновлять у всех детей, их детей и т.д.
2. Получение документов по псевдониму и если более одного документа исключать по родителю.
плюс: храним только небольшой псевдоним
минус: возможно много итераций, например:
/parent_1/parent_a/parent_b/parent_c/.../item
/parent_2/parent_a/parent_b/parent_c/.../item
Еще можно как второй вариант, только выборку делать от родителя к ребенку.
Последнее редактирование: