如何获取Flask中占位符的输入

0 投票
1 回答
41 浏览
提问于 2025-04-14 18:10

这是我在Flask中写的一部分代码,使用的是Python。

 ...output += '''<div class = recsettings> 
              Recording  
            <div class = recduration>
            change recording duration here 
            <form method ='POST'>
            <input placeholder = 'duration' name='duration' id ='duration'>   <---HERE
            <button type ='submit' action ='/duration'>Submit</button>
            </form>...'''

我现在想在点击提交按钮时,获取占位符的输入内容,但重定向到/duration显然不行,我也不知道该怎么解决这个问题。

@app.route('/duration', methods=['GET', 'POST'])
def duration():
tst = request.form.get("placeholder"); <---- Something like this 
print (tst)
return redirect(url_for('settings'))

必须不使用PHP。

1 个回答

0

我没有找到关于占位符的有效论据,反而有一个替代方案:

 <form action="/duration" method="get">
            <input type="text" name="name" />
            <input type="submit" />
            </form>

另一种方法:

@app.route('/duration', methods=['GET', 'POST'])
def duration():
userIn = request.args.get('name', 'default name goes here')
print (userIn)
return redirect(url_for('settings'))

这个方法做的事情和占位符一样,但不使用占位符。你可以把它隐藏起来,然后在上面放一个假的占位符。这也是一种解决办法,虽然不算是最干净的做法。

撰写回答