【发布时间】:2016-11-09 06:45:06
【问题描述】:
编辑 3:
我正在尝试在 pythonanywhere 上显示来自 csv 文件的信息,从用户输入到表单中提示。
我已将 client_db.csv 加载到我在 pythonanywhere 上的文件中:'/home/myusername/mydirectory/client_db.csv'。
基本上,用户会“输入地址:(表单)”,然后会显示“姓名”、“小屋”、“状态”和“付款”的值。
这是我迄今为止的尝试 (v3),但我没有让它发挥作用。我怀疑 html 输入有问题?
from flask import Flask
import os
import sys
import csv
import numpy as np
app = Flask(__name__)
app.config["DEBUG"] = True
path = '/home/myusername/ishack'
if path not in sys.path:
sys.path.append(path)
client_db = np.genfromtxt('/home/myusername/ishack/client_db.csv', delimiter=',',dtype=None, names=True)
@app.route('/')
def form()
return """
<html>
<body>
<h1>Enter a Shack Number</h1>
<form action="/address" method="POST">
<textarea class="form-control" name="address" placeholder="Enter a Shack Number"></textarea>
<input type="submit" />
</form>
</body>
</html>
"""
@app.route('/address', methods=["POST"])
def display_info(address):
ind = np.where(client_db['Shack']==address)[0]
return {'Name': client_db['Name'][ind],
'Shack': client_db['Shack'][ind],
'Status': client_db['Status'][ind],
'Payments': client_db['Payments'][ind]}
display_info(address)
【问题讨论】:
-
那么,你试过用烧瓶写什么?请注意,您可能希望返回数据而不是打印数据
-
顺便说一句,请确保使用 csv 的完整路径,例如 /home/myusername/myfolder/things.csv,而不仅仅是“things.csv”跨度>
-
感谢 cmets - 将按照分步指南进行操作,如果尽快尝试则恢复。
-
@hwjp 好的,我完成了非常有帮助的教程。我在上面做了一个(初学者)尝试......请看看:)
标签: python flask pythonanywhere