【问题标题】:Design: Custom access control (restrict page access based on some criteria)设计:自定义访问控制(根据某些标准限制页面访问)
【发布时间】:2011-04-27 06:40:28
【问题描述】:

虽然我将使用 Ruby on Rails,但这是一个关于为 CMS 建模数据库和设计自定义访问控制系统的最佳方法的一般问题。所以什么语言/数据库都没有关系。我很乐意听取所有专家的意见。

我的问题: 我正处于为当地大学开发在线辅导系统的早期阶段。这样做的目的是,学生将能够在主要课程材料之外获得额外的在线帮助。

基础知识: - 计划使用现有的 CMS 来管理内容(主要是网页)。

  • 内容由课程、主题、副主题等构成。

  • 注册的学生可以登录并查看相关内容(因此只能查看他们注册的课程资料)。

  • 当学生学习内容时,他/她需要做一些练习。

  • 有导师会检查学生的进度并在需要时提供进一步的帮助。 因此,练习结果与学生记录一起存储,供导师查看。

  • 学生对练习的回答不会评分,但会在提交时提供答案。

  • 主要问题:一些教授希望在其余内容可用之前强制学生进行练习。其他教授希望设置发布内容块的时间。也可以是两者的结合。

定时内容发布很容易做到。但我不知道如何建模和设计有条件的内容发布。在这种情况下,条件是学生的进步(完成的练习)。

为了说明,我有这样的内容:

    1. Calculus
    - 1.1 Limits
     - 1.1.1 Basic principles 
     - 1.1.2 More basics (with exercise)
     - 1.1.3 Answers to previous questions
    - 1.2 Derivatives
      - 1.2.1 Intro
      - 1.2.2 Sample problems(with exercises)
      - 1.2.3 Answers
      - 1.2.3 More content ....
    - 1.9 More calculus
       - 1.9.3 Some other content that is available when all previous exercises are completed
    2. Physics
    3. Chem 

示例: 微积分的内容只有在学生注册微积分课程后才能使用。 1.1.3、1.2 等的内容只有在 1.1.2 的练习完成后才可用。所以这是一种连锁反应。

所以你可以看到有一些结构,但主要是很多依赖关系。 所以我想知道什么是在数据库中建模的合适方法,以及如何为这样的系统设计访问控制。

有没有人遇到过类似的问题?任何想法、见解、参考都将受到欢迎。

非常感谢。

【问题讨论】:

    标签: php ruby-on-rails database-design content-management-system acl


    【解决方案1】:

    您可以使用已经制作好的系统来处理所有这些问题。 Moodle 是一种流行的开源替代方案,您可以像安装常规 CMS 一样安装它,它可以处理课程和学生,甚至是测验。 Here 是这些“学习管理系统”的列表,有些是免费的,有些不是。

    【讨论】:

    • 感谢您的回复。是的,我考虑过moodle。事实上,我们已经用它来管理课程内容。不幸的是,它对于我们的需求来说太笨重了。我们需要一些轻量级的东西,因此需要一个新项目。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-26
    • 1970-01-01
    • 2011-03-30
    • 2018-06-06
    • 2015-08-08
    • 2011-01-02
    相关资源
    最近更新 更多