|
|
|
Проектирование таблицы для web-сайта
|
|||
|---|---|---|---|
|
#18+
На данный момент у меня таблица следующего вида: 1.page_id 2.page 3.lang 4.type 5.content 6.menu 1 - авто id номер 2 - сама страница (в моем случае это 101, 102, 201, 302 и т.д.) 3 - язык страницы (может быть en, ru или any) 4 - тип информации о странице (может быть page_header, title, description и access) 5 - сама информация о странице 6 - если пункт находится в меню, то тогда тут ставится 1, если нет - то 0 то есть в итоге таблица для одной страницы выглядит так: '1' '101' 'en' 'page_header' 'News' '1' '2' '101' 'en' 'title' 'Best bonuses on the net' '0' '3' '101' 'en' 'keywords' 'bonus, money, free' '0' '4' '101' 'en' 'description' 'Information on how the free money system works' '0' '5' '101' 'ru' 'page_header' 'Новости' '1' '6' '101' 'ru' 'title' 'Лучшие бонусы в сети' '0' '7' '101' 'ru' 'keywords' 'бонус, деньги, бесплатно' '0' '8' '101' 'ru' 'description' 'Информация о том, как работает система халявных денег' '0' '9' '101' 'en' 'access' '1' '0' В данном случае каждая страница имеет свой title, keywords, description для мета тегов, page_header для пункта меню и access для ограничения уровня доступа пользователям. Если в базе будет запись только такого типа: '10' '102' 'en' 'page_header' 'Today' '0' То title, keywords и description для это страницы будут использованы от страницы - родителя, то есть в данном случае от страницы 101. Все же мне кажется что в данном случае таблица получается слишком сложная. Как вы думаете можно ли ее как то облегчить? Или может использовать две таблицы? Какую систему таблиц для своих сайтов используете вы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2009, 23:05 |
|
||
|
Проектирование таблицы для web-сайта
|
|||
|---|---|---|---|
|
#18+
Таблица не сложная, но спроектировать можно лучше. 1 вариант. Добавить еще одно поле - ссылку на родительский ID, тогда отпадет необходимость отслеживать наследование на программном уровне по какому-то мистическому признаку - 102 есть сын 101 - весьма не тривиально. 2 вариант. Отказаться от объединения разнородных признаков в одном поле. В вашем случае - в поле "type", на мой взгляд, собраны разнородные признаки. Признаки "page_header", "title" и "description" можно оставить в указанном поле. А вот признак "access" призван следить совсем за другим, его стоит вынести в отдельное поле, можно так и назвать его "access", а уже сами возможные уровни доступа ("admin", "editor", "user", ...) перечислить внутри. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2009, 11:33 |
|
||
|
|

start [/forum/topic.php?fid=32&fpage=85&tid=1543127]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
45ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
28ms |
get tp. blocked users: |
1ms |
| others: | 246ms |
| total: | 361ms |

| 0 / 0 |
