你的主意。。。是不是;django mptt“;适合这种课程结构体系吗? 我们考虑一个学习管理系统的课程结构(称之为在线学校)。
我们有这样的东西:你的主意。。。是不是;django mptt“;适合这种课程结构体系吗? 我们考虑一个学习管理系统的课程结构(称之为在线学校)。,django,django-models,tree,hierarchical-data,django-mptt,Django,Django Models,Tree,Hierarchical Data,Django Mptt,我们有这样的东西: Course 1 Topic 1 Sub-Topic 1-1 sub-Topic 1-2 Topic 2 Sub-Topic 2-1 Sub-Topic 2-2 Course 2 Topic 1 Sub-Topic 1-1 sub-Topic 1-2 Topic 2 Sub-Topic 2-1 Sub-Topic 2
Course 1
Topic 1
Sub-Topic 1-1
sub-Topic 1-2
Topic 2
Sub-Topic 2-1
Sub-Topic 2-2
Course 2
Topic 1
Sub-Topic 1-1
sub-Topic 1-2
Topic 2
Sub-Topic 2-1
Sub-Topic 2-2
...
例如,我们有一个课程“数学1”,主题“线性代数”,子主题“线性方程组”
重要的一点是,我们可以为每个节点分配一些内容和一些测试
现在django mptt出炉了:
1) 我需要在导航栏中填充课程树。我想这应该很简单,也很琐碎。你的想法是什么
2) 也许我想对课程1中的子主题1-1和课程2中的子主题2-2进行测试。它不是破坏了树木理论吗?嗯,我相信它们不是树的一部分。。它们只是指向一些节点。你觉得怎么样
感谢您事先的回答。只能回答第2点对不起
关于这个理论,你描述的不是树,而是一个DAG(有向无环图),它不再是树了
然而,许多构建在django mptt之上的CMS以这种方式解决了这个问题(多亏django mptt能够处理森林而不仅仅是一棵树):
- 他们会将共享节点(您的测试)放在不同的树中
- 如果共享节点位于树中,在您案例的子主题1-1和2-2下,它们添加了某种虚拟节点,唯一的角色是指向另一个节点,即您案例中包含测试的节点
这非常类似于文件系统上的符号链接
然后,您可以在一棵树中完成所有操作:
Fall semester 2012
Course 1
Topic 1
sub-topic 1-1
sub-topic 1-2
Topic 2
sub-topic 2-1
sub-topic 2-2
Test -------------+
Course 2 |
Topic 1 |
sub-topic 1-1 |
sub-topic 1-2 |
Topic 2 |
sub-topic 2-1 |
sub-topic 2-2 |
Test ------------+
Tests |
Test 1 <----------'
Part 1
Part 2
2012年秋季学期
课程1
专题1
分专题1-1
分专题1-2
专题2
分专题2-1
分专题2-2
试验-------------+
课程2|
专题1|
分专题1-1|
分专题1-2|
专题2|
分专题2-1|
分专题2-2|
试验------------+
测验|
测试1很好。您处理的是分层数据,因此django mptt是适用的。去做吧。如果你有问题,那么你可以来这里问问题。谢谢克里斯。。像往常一样:)非常感谢。。哦这比我以前想的要复杂得多。因此,如果每个节点都有两个不同的测试(选择题、普通考试)和“内容(课程)”,我应该为每个节点形成额外的树?更新:niceee图表。。。你的建议太棒了。。。大如:)
Course 1
Topic 1
sub-topic 1-1
sub-topic 1-2
Topic 2
sub-topic 2-1
sub-topic 2-2
Test -------------+
|
Course 2 |
Topic 1 |
sub-topic 1-1 |
sub-topic 1-2 |
Topic 2 |
sub-topic 2-1 |
sub-topic 2-2 |
Test ------------+
|
Test 1 <------------'
Part 1
Part 2