我目前正在将现有的定制内容管理系统从使用MySQL转换为MongoDB。 CMS具有标题和正文内容的页面,存储在名为pages
的表中。
CMS还有多个菜单,可由网站管理员编辑,所有菜单都存储在名为menus
的表中。每个都有一个唯一的ID和链接,存储在一个名为menu_links
的表中。
在menu_links
中,有一列指示菜单链接是指向某个网页还是网址,以及一列是否包含其链接到的网页的ID,或NULL
如果是URL。这是为了防止在页面的URL发生变化时菜单URL中断。
我可以看到,MongoDB的所有内容都是将文档嵌入到另一个文件中,最终会出现菜单的重复数据和非常难以管理的系统。将页面的ID链接到菜单项是否合适?
答案 0 :(得分:0)
我不知道这是不是你的意思
页
{
_id: 111,
// other fields
url: "url/to/page/111"
}
菜单
{
_id: 1,
elements: [
{page_id: 111, url: "url/to/page/111"},
{page_id: 222, url: "url/to/page/222"}
]
}