如何向用户显示问题并使用 "if" "else" 语句专家系统 django 进行比较?
how to display questions to user and compare them using "if" "else" statements expert system django?
我已经将规则以问题的形式存储在数据库中,想通过用户提问,然后得出一个结果。
我希望在用户屏幕上显示带有是或否选项的问题,并根据选择提出更多问题。我无法找到一个解决方案,我应该如何比较来自前端和后端的用户输入(django)
到目前为止我已经试过了
views.py
def fetch_rules(request):
if request.method=='POST':
issueid=request.POST['issueid']
rules=Rules.objects.all().filter(parentissue=issueid)
return render(request,"questions.html",{"rules":rules})
else:
return HttpResponse("Not found")
模板
{% extends 'base.html' %}
{% block content%}
<div class="questionwrapper">
{% for rul in rules %}
<div class="question">
<h1>{{rul.question}}</h1>
</div>
<div class="solution">
<p>{{rul.solution}}</p>
</div>
<p style="text-align: center;font-weight: bold;">Your issue solved?</p>
<div class="question_btns">
<a id="yes_q" >Yes</a>
<a id="no_q" >No</a>
</div>
{%endfor%}
</div>
{% endblock %}[![My template][1]][1]
目前模板显示所有问题,但我想一次显示一次,然后根据用户的选择一个接一个地显示。
如果要动态添加内容,必须要用到前端技术。您所要做的就是使用 CSS display:none
隐藏问题,然后在按钮上创建 onclick 事件,一个简单的 JS 脚本将更改特定子项的显示 display:nth-child(n):inline-block
您也可以使用对象 ID 做一些类似的事情,例如:
<div class="question" data-id={{rul.question.id}}>
<h1>{{rul.question}}</h1>
</div>
现在您可以使用 data-id 和 JavaScript
对对象进行排序或显示
我已经将规则以问题的形式存储在数据库中,想通过用户提问,然后得出一个结果。 我希望在用户屏幕上显示带有是或否选项的问题,并根据选择提出更多问题。我无法找到一个解决方案,我应该如何比较来自前端和后端的用户输入(django) 到目前为止我已经试过了
views.py
def fetch_rules(request):
if request.method=='POST':
issueid=request.POST['issueid']
rules=Rules.objects.all().filter(parentissue=issueid)
return render(request,"questions.html",{"rules":rules})
else:
return HttpResponse("Not found")
模板
{% extends 'base.html' %}
{% block content%}
<div class="questionwrapper">
{% for rul in rules %}
<div class="question">
<h1>{{rul.question}}</h1>
</div>
<div class="solution">
<p>{{rul.solution}}</p>
</div>
<p style="text-align: center;font-weight: bold;">Your issue solved?</p>
<div class="question_btns">
<a id="yes_q" >Yes</a>
<a id="no_q" >No</a>
</div>
{%endfor%}
</div>
{% endblock %}[![My template][1]][1]
目前模板显示所有问题,但我想一次显示一次,然后根据用户的选择一个接一个地显示。
如果要动态添加内容,必须要用到前端技术。您所要做的就是使用 CSS display:none
隐藏问题,然后在按钮上创建 onclick 事件,一个简单的 JS 脚本将更改特定子项的显示 display:nth-child(n):inline-block
您也可以使用对象 ID 做一些类似的事情,例如:
<div class="question" data-id={{rul.question.id}}>
<h1>{{rul.question}}</h1>
</div>
现在您可以使用 data-id 和 JavaScript
对对象进行排序或显示