【问题标题】:how to display questions to user and compare them using "if" "else" statements expert system django?如何使用“if”“else”语句专家系统 django 向用户显示问题并进行比较?
【发布时间】:2020-05-05 19:41:54
【问题描述】:

我已将规则以问题的形式存储在数据库中,并希望用户提出问题然后得出结果。 我希望问题以是或否选项显示在用户屏幕上,并根据选择提出进一步的问题。我找不到解决方案,我应该如何比较来自前端的用户输入和后端(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]

目前模板显示所有问题,但我想一次显示一次,然后根据用户的选择一个接一个地显示。

【问题讨论】:

    标签: python django django-templates artificial-intelligence expert-system


    【解决方案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 对对象进行排序或显示

    【讨论】:

      猜你喜欢
      • 2022-11-16
      • 1970-01-01
      • 2018-07-10
      • 2020-05-28
      • 2023-03-17
      • 1970-01-01
      • 2016-01-21
      • 1970-01-01
      • 2022-01-09
      相关资源
      最近更新 更多