Я хочу обновить свой профиль, но мой db.session.commit () не работает в IDLE, и когда я пытаюсь использовать PythonShell, он работает.Я не знаю почему, пожалуйста, помогите мне.Извините за мой английский
@app.route('/edit/<username>',methods=['POST','GET'])
@login_required
def edit(username):
form = ProfileForm(request.form)
if request.method=='POST' and form.validate():
t_user = User.query.filter_by(username=username).first()
t_infor = Infor.query.with_parent(t_user).filter_by(user_id=t_user.id).first()
t_infor.phone = form.phone.data
t_infor.mail = form.mail.data
db.session.commit()
return redirect(url_for('profile',username=username))
return render_template('edit.html',form=form,username=username)
@app.route('/profile/<username>')
@login_required
def profile(username):
t_user = User.query.filter_by(username=username).first()
t_infor = Infor.query.with_parent(t_user).filter_by(user_id=t_user.id).first()
ifmt=[{
'name': t_user.name,
'phone':t_infor.phone,
'mail':t_infor.mail
}]
return render_template('profile.html',username=username,ifmt=ifmt)