Я собираю базу данных для обработки контента, созданного для сайта, однако, думая о долгосрочной перспективе, я не уверен, что у меня самая лучшая система.
В настоящее время яиспользуя метод маршрутизации для передачи всего через index.php
, который .htaccess
маршрутизирует следующим образом index.php?route=example/url
(пользователь видит http://www.domain.com/example/url
)
В настоящее время база данных настроена, как показано ниже:
uid | title | content | category
--------------------------------------------------
/ | Home | aaa | 1
/example | Example | bbb | 2
/example/url | Example: URL | ccc | 2
Хотя я не уверен, что это лучший подход, особенно если бы я хотел переименовать example
в something
- мне пришлось бы переименовывать каждый URL ...
Так что я тожеПодумал о методе Nested Set (например, http://www.phpclasses.org/package/2547-PHP-Manipulate-database-records-in-hierarchical-trees.html), хотя это просто показало бы множество различных чисел в базе данных, где я мог бы получить доступ ко всему по его узлу. Пример ниже;
node | left | right | name
--------------------------
1 | 1 | 6 | Home
2 | 2 | 5 | Example
3 | 3 | 4 | URL
Затем яможет использовать узел в качестве uid? Но я не уверен, как я мог бы перевести http://www.domain.com/example/url
в uid
, равный 3 ...
У меня уже есть столбец категории в моей базе данных на данный момент,классифицировать контент, хотя я мог бы потенциально изменить это.
В основном я ищу предложения о том, как действовать, потому что, поскольку сайт получает больше контента, изменить настройку будет сложнее - поэтому я хочу в идеале сделать это правильно с самого первого дня.
- Какое из двух лучше подходит для масштабируемости?
- Если второе, как перевести URL на узел?
Могу ли я как-то объединить оба, чтобы оригиналбаза данных хранит uid в качестве номера узла, затем выполняет какое-то соединение, чтобы сделать uid URL-адресом (как в 1) - затем]
^ Я думаю, я бы предпочел это (третье),но точно не знаю, как это сделать в MySQL, с некоторыми другими преимуществами:
- Я мог бы заменить свою систему категорий на родительский узел - что может быть лучше
- Я мог бы и тогда теоретическихранить идентификатор узла в системе статистики, а не URL
Если кто-нибудь может дать некоторую помощь / предложения - я был бы благодарен!