我正在用 Python 编写心理学实验,我需要将其作为 Web 应用程序提供。我已经让 Python 基本上作为命令行程序工作。在 CS 伙伴的推荐下,我将 Django 与 sqlite 数据库一起使用。这也有效,我的开发服务器已启动,数据库表已准备就绪,正在等待。
我不明白的是如何将这两部分粘合在一起。我发现的 Django 教程都是关于构建博客、消息系统或投票等内容的;基于发送表单数据的系统。我不能那样做,因为我要以毫秒为单位计时对呈现的刺激的响应 - 我需要构建一个不依赖于(在练习期间)表单 POST 数据或 URL 更改的交互式应用程序。
简而言之:我不知道如何从我的简单命令行程序转到“实时”交互式 Web 应用程序。
相关教程链接的最大荣誉!我也非常感谢对我在这里缺少的概念的高级解释。
(仅供引用,我之前问过一个关于这个项目的问题(数据库的选择)here)
请您参考如下方法:
您将需要使用 HTML/Javascript,然后您可以收集结果并将其发送到服务器。不过,结果可能会受到影响,因为练习的代码将在客户端。
编辑:我推荐一个 Javascript 库,jQuery:http://docs.jquery.com/Tutorials
编辑 2:
我会更具体一点,您至少需要 Django 中的两个模型,Exercise 和 ExecutedExercise。练习将包含名称、编号等字段,每个练习的通用数据。 ExecutedExercise 将有两个字段,一个是 Exercise 的外键,一个是存储完成所需时间的字段。
现在在 Javascript 中,您将为练习计时,然后将它们发布到将处理数据存储的 Django View 。如何发布它们?你可以使用 http://api.jquery.com/jQuery.post/创建数据字符串 data = { e1: timingE1, e2: timingE2 } 并将其发布到 View 。您可以在该 View 中处理 POST 参数,创建一个 ExecutedExercise 对象(您将获得每次练习所花费的时间)并保存它们。
