Я создаю cms и еще не решил, где хранить полный URL для данной страницы в структуре.
У каждой страницы есть слаг (понятное для URL имя страницы), и у каждой страницы есть обнуляемый (для страниц верхнего уровня) родитель и потомок.
Где мне хранить полный URL-адрес (/ первая страница / дополнительная страница) для данной страницы? Должно ли это быть в базе данных вместе с другими свойствами страницы или в каком-либо кэше?
Обновление
Я спрашиваю не о дизайне базы данных, а о том, где хранить полный URL-адрес данной страницы, поэтому мне не нужно просматривать весь URL-адрес, чтобы получить страницу, которую запросил пользователь (/ first-page / дополнительная страница)
Обновление 2
Мне нужно выяснить, какая страница принадлежит запрашиваемой в настоящий момент ссылке. Если запрошенный URL-адрес / first-page / sub-page, я не хочу разбивать URL-адрес и проходить по базе данных (очевидно).
Я бы предпочел иметь весь URL в таблице, чтобы я мог просто выполнить один запрос (WHERE url = '/ first-page / sub-page'), но это не кажется идеальным, что если я изменю слизняк для родительской страницы? Затем мне также нужно обновить поле URL для всех потомков.
Как другие люди решают эту проблему? Они помещают это в базу данных? В кеше, который отображает / first-page- / sub-page на идентификатор страницы? Или они разделяют запрошенный URL и зацикливают базу данных?
Спасибо
Anders