如何使用来自 pythonanywhere 上托管的烧瓶应用程序的输入将信息写入 txt 文件或 csv 文件
How do I write info into a txt file or csv file using input from a flask app that is hosted on pythonanywhere
我不明白这个问题。之前,当我在终端 运行 这段代码工作正常时,但是当我将它托管在 python 任何地方时,这段代码不会将 html 表单的输入写入 txt 文件。对于正在发生的事情,我真的很困惑。
我的 python 代码是这样的
def write_file(data):
with open('new.txt', 'a') as f:
f.write(data + '\n')
@app.route('/in/', methods=['GET', 'POST'])
def notin():
if request.method == 'POST':
notin = str(request.form['in'])
write_file(notin)
return render_template('in.html')
return render_template('form.html')
我的html代码是(in.html):
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<form method="POST" action='/in/'>
<div class="form-group">
<input type="text" name="in">
</div>
</form>
</body>
</html>
您使用的是文件的相对路径,而没有注意您的代码所在的工作目录 运行。使用 new.txt 的完整路径,这样工作目录就不会影响文件的写入位置。
我不明白这个问题。之前,当我在终端 运行 这段代码工作正常时,但是当我将它托管在 python 任何地方时,这段代码不会将 html 表单的输入写入 txt 文件。对于正在发生的事情,我真的很困惑。 我的 python 代码是这样的
def write_file(data):
with open('new.txt', 'a') as f:
f.write(data + '\n')
@app.route('/in/', methods=['GET', 'POST'])
def notin():
if request.method == 'POST':
notin = str(request.form['in'])
write_file(notin)
return render_template('in.html')
return render_template('form.html')
我的html代码是(in.html):
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<form method="POST" action='/in/'>
<div class="form-group">
<input type="text" name="in">
</div>
</form>
</body>
</html>
您使用的是文件的相对路径,而没有注意您的代码所在的工作目录 运行。使用 new.txt 的完整路径,这样工作目录就不会影响文件的写入位置。