![](/img/trans.png)
[英]Using Python, flask and SQLAlchemy How can I print on an HTML page the result of a DB query?
[英]How do I get a users selection from a select element in html and use it in a SQLAlchemy query, returning the result on the same page?
我有一个 select 元素,其中包含从名称表中提取的条目,然后我想根据所选名称查询链接。 我希望链接在选择名称后显示在页面上,但我不知道将选择提交给 flask 或如何在加载后将查询结果返回到页面。
我目前有一个应用程序路由将 Name.query.all() 的结果发送为 names=names 但我不知道如何获取用户输入(比如名字)并在查询中使用它并返回查询[像 Link.query.filter(name_id == 1).all() ] 在页面加载后作为 links=links。
当你提出问题时,你必须分享你的代码,但由于你是新贡献者,我会给你一个答案。
如果你不想离开页面,你需要写一些 java 脚本。 这是一个例子:
<select onchange="myFunction()" id="mySelect">
...
</select>
<p id="link"></p>
<script>
myFunction() {
var value = document.getElementById("mySelect").value;
const xhttp = new XMLHttpRequest();
xhttp.onload = function() {
document.getElementById("link").innerHTML = this.responseText;
}
xhttp.open("GET", "yourDomain/yourRoute/" + value);
xhttp.send();
}
</script>
现在在 flask 中创建一个路由来接收该请求并返回链接。
@app.route("/yourRoute/<value>", methods=["GET"])
def getLink(value)
....
return link
一个更简单的替代方法是让用户 select 得到他们想要的,然后提交表单。 在 flask 中,返回一个显示链接的新模板。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.