Psych Experiment в Python (с Django) - как перенести в интерактивное веб-приложение? - PullRequest
2 голосов
/ 05 августа 2011

Я пишу психологический эксперимент на Python, и мне нужно сделать его доступным как веб-приложение. У меня уже есть Python, в основном работающий как программа командной строки. По рекомендации приятеля CS я использую Django с базой данных sqlite. Это также работает, мой сервер разработки включен, и таблицы базы данных готовы и ждут.

Чего я не понимаю, так это как склеить эти две части. Учебные руководства по Django, которые я нашел, посвящены созданию таких вещей, как блоги, системы обмена сообщениями или опросы; системы, основанные на отправке данных формы. Я не могу этого сделать, потому что я рассчитываю ответы на представленные стимулы в миллисекундах - мне нужно создать интерактивное приложение, которое не полагается (во время упражнения) на данные формы POST или изменения URL.

Короче говоря: я понятия не имею, как перейти от моей простой программы командной строки к интерактивному веб-приложению в реальном времени.

Максимальная благодарность за ссылки на соответствующие учебники! Я также буду очень признателен за высокоуровневое объяснение концепции, которую я здесь упускаю.

(К вашему сведению, я задал предыдущий вопрос (выбор базы данных) об этом проекте здесь )

1 Ответ

3 голосов
/ 05 августа 2011

Вам нужно будет использовать HTML / Javascript, а затем вы можете собирать и отправлять результаты на сервер. Однако результаты могут быть получены, поскольку код для упражнения будет на стороне клиента.

Редактировать: я рекомендую библиотеку Javascript, jQuery: http://docs.jquery.com/Tutorials

Редактировать 2:

Я буду более конкретен, вам нужно как минимум две модели в Django, Exercise и ExecutedExercise. В упражнении будут поля с его именем, номером и т. Д., Общие данные для каждого упражнения. ExecutedExercise будет иметь два поля: внешний ключ для Exercise и поле для хранения времени, которое потребовалось для завершения.

Теперь в Javascript вы будете планировать упражнения, а затем отправлять их в представление Django, которое будет обрабатывать хранение данных. Как их опубликовать? Вы можете использовать http://api.jquery.com/jQuery.post/ Создать строку данных, data = {e1: хронометражE1, e2: хронометражE2} и опубликовать ее в представлении. Вы можете обработать параметры POST в этом представлении, создать объект ExecutedExercise (у вас будет время, затрачиваемое на каждое упражнение) и сохранить их.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...