を複数の行を置き換えます!Pythonの - 私は、Pythonに新たなんだPythonのフラスコ内の
私はOK、すべてを読んで、書いて、フォーム、置き換えは、第1の入力で正常に動作しているが、それは私の第二の入力で働いていない持っています。私は「家」のためにそれを変更した場合たとえば
は、私は、私の言葉1 =玩具を持っている、それは非常によく私の.txtファイルを上書きしますが、私は私の言葉で2 =家をすれば、何も起こりません。
これは私のコードのフラスコである:これは私の.txtの
wordone Toy
wordtwo house
ある
from flask import Flask,render_template,flash,request,redirect
import os
app = Flask(__name__)
from lines import word_one,word_two
@app.route('/', methods=['POST'])
def change_line():
error= 'Cambios exitosos.'
replace = word_one()
replacetwo = word_two()
try:
if request.method =="POST":
word = request.form ['word']
words = request.form ['words']
filedata= None
rem = None
with open('line.txt','r') as f:
filedata = f.read()
rem = f.read()
filedata = filedata.replace(replace , word + "\n")
rem = rem.replace(replacetwo , words + "\n")
with open('line.txt','w') as f:
f.write(filedata)
f.write(rem)
except BaseException as e:
print e
return render_template('line.html')
@app.route('/')
def showLine():
wordone = word_one()
wordtwo = word_two()
return render_template('line.html', wordone=wordone, wordtwo=wordtwo)
if __name__ == '__main__':
app.run(debug=True)
ワード1は、私の唯一の問題働いているように、これは私の.html
<form method="post" name="test">
<h4>Chaging Values with POST Method</h4>
<div class="col-sm-9">
<label class="col-sm-3 col-sm-3 control-label">word 1 : </label>
<input type="text" class="form-control" name="word" value="{{ wordone }}">
</div>
<div class="col-sm-9">
<label class="col-sm-3 col-sm-3 control-label">word 2 : </label>
<input type="text" class="form-control" name="words" value="{{ wordtwo }}">
</div>
<input type="submit" value="Save Changes!">
</form>
ですここに私のです...ワード2で
されますクライアントでの出力:
ここで何が間違っているのか分かりません。出力はどのように表示されるべきですか? –
私は単語を変更した場合は2入力何も起こりませんが、私はワード1入力で同じことを行う場合には、それが働いたフォームと私の.txtの –