使用户能够在完成Web表单时保存进度

时间:2011-08-26 18:29:14

标签: database forms webforms

我正在创建一个学校网站,教师可以在学期内通过各种基准跟踪学生的表现,然后在结束时提交结果,以便进行部门范围的评估。我的计划是建立一个教师在一年中逐步完成的表格,其当前状态将保留在一个数据库中,该数据库也将存储最终提交的内容。

我的问题是,正确的方式是做什么的?我对HTML,客户端脚本,服务器端脚本(选择的语言是Python)和数据库有一定的工作知识,我当然可以找到一种方法来解决这个问题,但如果有一些常见的模式,我想知道的事情。特别是,如果有人能描述最好的方法,我会很感激:

  1. 实施用户登录/帐户
  2. 允许用户在表单上保存进度

2 个答案:

答案 0 :(得分:0)

我不是蟒蛇专家,但是......
你的帖子没有告诉我们你是否已经看过框架 我听说Django很好,遵循“包含电池”的策略。我鼓励你仔细看看authentication module。这可能会回答你的第一个问题。

其次,将数据随时间推移存储在数据库中在我看来很好。这完全取决于你的建模技巧。如果您在考虑数据库查询的情况下为数据设计复杂而灵活的模型,则应该不会遇到任何问题。但建议在应用程序开发中为该步骤分配更多时间。

答案 1 :(得分:0)

  

......教师在一年中逐步完成

如果是这种情况,只需将表单的状态存储在数据库中,很可能是表格中每个值的列。这与让用户编辑他们的个人资料或类似内容没什么不同 - 它基本上只是一个表单,他们可以随时回来并对数据库填充的值进行更改,并可能由您的应用程序操作。

如果您说“老师在”过程中逐步完成,我建议您也这样做,尽管将值存储在用户的会话或cookie中将是另一种方式实现这一目标。事实上,如果用户没有注册帐户,这可能是您可以做到的唯一方法。请注意,会话和cookie可以删除或过期(对于这种特殊情况,这听起来不是一个好主意)。

将用户ID分配给一列,其他值中的值。如果需要,您可以附加表而不是覆盖表行的值,这样您就可以跟踪修订历史记录并了解所做的更改以及更改时间。