zoukankan      html  css  js  c++  java
  • DNN数据库核心表结构及设计思路探研

    1.表名称:
    Tab 页面表,TabModules页面模块表,Modules模块表,ModuleDefinitions模块定义表,ModuleControls模块控件表,DesktopModules桌面模块

    2.Tab是一张自连接的表,即DNN中的Page(页面)

    3.Modules是DNN内容管理的模块单元,就是下面中所谓的模块,我们在这里就叫他页面模块。他与Tabs的关系是多对多,即,一个页面中可以放多个相同的模块实例(功能:添加新模块),同一个模块实例也可以放在不同的页面上(功能:增加已有模块)(注:此处添加模块实际上是添加桌面模块,一个桌面模块可能有好几个页面模块,这个后面再述)。

    4.DesktopModules桌面模块,模块开发者眼中的模块,像blog,新闻,下载等,就是我们平时安装,卸载的模块。这里我们叫桌面模块

    5.桌面模块与页面模块,平时我们似乎习惯与都叫他们模块。但实际上他们根本不是同一个东西,相差很大。由关系图可发现:一个DesktopModules桌面模块可以有好几个(模块定义ModuleDefinitions),一个(模块定义ModuleDefinitions)可以有好几个页面模块,像HTML,Link这些桌面模块实在太简单了,所以,他们一个桌面模块只有一个模块定义,当我们往页面上添加桌面模块时,只会添加一个页面模块。但当我们添加blog模块时,就会发现,添加一个桌面模块,桌面上就会一下子多出好几个页面模块,这是因为,blog太复杂,一个模块定义搞不定,所以,一个桌面模块添加了好几个模块定义,当往桌面添加桌面模块时就会将这个桌面模块的所以模块定义都添加一次(一个模块定义,在页面上就一个页面模块)。ModuleControls模块控件表,也可以叫控制表,就是下面中控制一列中的东西,基本上是一个控制,对应一个用户控件,所以我叫他模块控件表

  • 相关阅读:
    QT正则表达式
    unix网络编程笔记
    网页书签
    trie tree(字典树)
    C++网络爬虫抓取图片
    网络编程——客户端简单流程
    OpenCV系列--摄像头控制的简单代码
    订单号生成雪花算法
    docker 运行tomcat项目
    docker 打包springboot镜像并启动
  • 原文地址:https://www.cnblogs.com/shiningrise/p/847119.html
Copyright © 2011-2022 走看看