如何在没有后台的情况下保存用户的输入

时间:2017-04-17 06:40:06

标签: django views

我只是在学习Django和Web开发,我想知道我想做什么是可能的。我想写一个Django测验,保存用户输入的答案而不需要后端。这有可能吗?如果不可能,那么我能做到的最简单,最简单的方法是什么?我的模板:

{% extends "base.html" %}
{% block title %}Exam Questions{% endblock %}
{% block content %}
    {% if all_questions %}
        <form action="{% url 'save_answer' %}" method="post">
        {% csrf_token %}
        {% for question in all_questions %}
            <h3>{{question.text }}</h3>
            <input type="hidden" name="exam_id" value="{{ question.exam.id }}">
            <input type="hidden" name="question_id" value="{{ question.id }}">
        <input type="hidden" value="{{question.answer_set.all}}" name="answers">
        {% for answer in question.answer_set.all %}
            <p><input type="radio" name="answer" value="{{ answer.id }}">{{ answer.text }}</p>
        {% endfor %}
    {% endfor %}
        <input type="submit" value="Send">
    </form>
{% else %}
    <h2>No questions available</h2>
{% endif %}
{% endblock %}

现在我想知道如何在没有后端的情况下保存用户答案

2 个答案:

答案 0 :(得分:0)

Afaik,您可以将其保存在后端(django forms doc),或使用javascript保存在client browser cookie

答案 1 :(得分:0)

首先,使用模板进行更改,以使无线电选择正常工作

Snake : 2
Rabbit : 4
Grass : 2
Eagle : 2
Grasshopper : 2

然后,这是存储会话答案的代码:

<p><input type="radio" name="answer_{{ question.id }}" value="{{ answer.id }}">{{ answer.option }}</p>