0

我有一个说coursescertificates和的列表fun_days。这些都叫objects。每个对象都有它的要求object_requirements。需求可以是其中之一objects或多个。

您可以将任何object 没有 object_requirements作为starting point. “每个人都可以拥有这些物品。”

所以它可能是这样的:

  • Introduction_course是一个起点(无要求)
  • Introduction_certificate有的人可以获得Introduction_course(这course是this的要求certificate
  • Funday_swimming可以由那些拥有Introduction_certificate(证书是要求fun_day)的人获得。

有没有办法创建该系统的分层或某种结构化流程的可视化表示?该示例相当简单,但“树”中的任何位置都应该有多个要求。

这就是我存储需求的方式:

TABLE: OBJECT_REQUIREMENT
 OBJECTTYPE                (pk)
 OBJECTID                  (pk)
 REQUIREMENT_OBJECTTYPE    (pk)
 REQUIREMENT_OBJECTID      (pk)

TABLE: COURSE
 OBJECTID                  (pk)
 OBJECTTYPE                       // value is always [1] for course

TABLE: CERTIFICATE
 OBJECTID                  (pk)
 OBJECTTYPE                       // value is always [2] for certificate

TABLE: FUN_DAY
 OBJECTID                  (pk)
 OBJECTTYPE                       // value is always [3] for fun_day

哦,我使用 PHP 和 MySQL。但是任何可以生成这些视觉表示的软件也将受到欢迎!

4

2 回答 2

2

您可能会考虑像有向图这样的东西,这个之前的 SO 问题可能对它有用:

如何在 PHP 中进行有向图绘制?

于 2009-10-30T01:09:23.617 回答
0

您可以使用<li>标签,因此:

  • 简介_课程
    • 简介_证书
      • funday_swimming
    • 另一个证书

如果您尝试在 html 中显示它。

If you want something that is more graphical, you can use svg files or canvas tags (in html5) in order to draw the graph, or, just use lib_gd to draw a bitmap, and make it into an imagemap, if needed.

于 2009-10-30T01:13:22.767 回答