Python Flask儿童模板不渲染

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (97)

基本模板:index.html

儿童模板:child.html

myProject
    templates
        child.html
        index.html
main.py        

当我点击应该呈现child.html的按钮时,没有任何反应。没有错误等。页面保持不变。

index.html部分

<div class="col-lg-9 card mt-5" style="min-height: 750px;">
    <div id="content" class="card-body">
       {% block content %}{% endblock %}
    </div>
</div>

child.html

{% extends "index.html" %}  

{{ super() }} 
{% block content %}   
<h3 id="activeCountry" class="w3-display-topleft w3-text-black w3-container" style="padding:24px 48px">{{activeCountry}}</h3>
<p>Test</p>
{% endblock %}

main.py

@app.route('/setActiveCountry/<item>', methods=['POST'])
def setActiveCountry(item):
    jsdata = request.form['javascript_data']
    print(jsdata)
    return render_template('child.html', activeCountry=jsdata)    

它打印jsdata它到达上面的功能。

我很茫然。我尝试过类似的Stackoverflow问题,但我已经有了他们所缺少的东西。我也尝试取出{{super()}},将“content”作为一个类而不是id,并删除{%sections中的空格。

提问于
用户回答回答于

看来你没有GET请求的处理程序,它会返回任何模板。您的表单路由中应该有一个GET处理程序

@app.route('/', methods=['GET'])
def index():
    return render_template('index.html')

还有一个用于child.html在不同路线下渲染的东西

@app.route('/child', methods=['GET'])
def child():
    return render_template('child.html')

您的问题中也没有任何内容表明对所调用的模板有何用处displayCountryInfo.html

扫码关注云+社区

领取腾讯云代金券