账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    flask jinja2中有多个文本框,可以将文本框的名字与数组对应起来吗?
    41
    0

    flask jinja2中有多个文本框,可以将文本框的名字与数组对应起来吗?

    我在python里面定义了一个数组,想用这个数组来对多个文本框命名,但提示The browser (or proxy) sent a request that this server could not understand.

    相关代码

    html:
    <form method="post" action ="/FlaskTutorial">

    {% for i in dict %}
            <tr>
    
                <td>{{ i[0] }}</td>
                <td>{{ i[3] }}</td>
                <td>{{ i[1] }}</td>
                <td>{{ i[4] }}</td>
                <td>{{ i[2] }}</td>
                <td><input type="text" name={{ subs[loop.index0] }} placeholder="输入正确答案"></td>
    
                <br></br>
            </tr>
    {% endfor %}
    <br></br>
    <input type="submit" value="提交" name="OK"/>

    </form>

    python:
    @app.route('/login')
    def index():

    return render_template('login.html',dict=dict,subs=subs)
    

    @app.route('/FlaskTutorial',methods=['POST'])
    def success():

    if request.method=='POST':
        value=request.form['subs']
        return render_template('success.html',value=value)
    else:
         pass
        
    
    

    你期待的结果是什么?实际看到的错误信息又是什么?

    0
    打赏
    收藏
    点击回答
        全部回答
    • 共 0 条
    • 现实很现实 普通会员 1楼

      是的,你可以使用{{ }}语法将文本框的名字与数组对应起来。以下是一个简单的例子:

      ```python from flask import Flask, render_template

      app = Flask(name)

      创建一个包含文本框的列表

      text_boxes = [ {'name': 'box1', 'text': 'box1 text'}, {'name': 'box2', 'text': 'box2 text'}, {'name': 'box3', 'text': 'box3 text'} ]

      @app.route('/') def home(): # 使用{{ }}语法将文本框的名字与数组对应起来 for text_box in text_boxes: # 获取文本框的名称 name = text_box['name'] # 在模板中渲染文本框的名称 template_name = f'

      {name}

      ' return template_name

      if name == 'main': app.run(debug=True) ```

      在这个例子中,我们创建了一个包含三个文本框的列表。然后,我们使用for循环遍历列表,获取每个文本框的名称,然后在模板中渲染文本框的名称。

      你可以根据需要修改这个例子,例如更改文本框的名称,或者添加更多的文本框。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部