python не получает значение из html формы
У меня есть метод profile который должен получать текст из html формы и заносить его в базу данных но он почему-то не видит его. Я проверял с помощью вывода в консоль, но ничего не выводится. В чем может быть проблема,
@app.route('/', methods=['GET', 'POST'])
def login():
if request.method == 'POST':
email = request.form['email']
password = request.form['password']
cur = mysql.connection.cursor()
cur.execute('SELECT * FROM users.data WHERE email = %s AND password = %s',
(email, password))
account = cur.fetchone()
if account:
session['loggedin'] = True
session['id'] = account[0]
session['email'] = account[3]
return redirect(url_for('profile'))
else:
return render_template('error.html')
return render_template('login.html')
@app.route('/profile', methods=['GET','POST'])
def profile():
if 'loggedin' in session:
return render_template('profile.html', id=session['id'], email=session['email'])
if request.method == 'POST':
description = request.form['description']
print(description)
cur = mysql.connection.cursor()
account = cur.fetchone()
session['id'] = account[0]
cur.execute('UPDATE users.data SET description = %s WHERE id = %s', (description, session['id']))
mysql.connection.commit()
cur.close()
print(description)
return render_template('profile.html', description=description)
else:
return 'NO'
return redirect(url_for('login'))
profile.html:
<form action="" method="POST">
<input type="text" name="description" class="form-control" placeholder="description">
<button class="btn btn-primary">Add</button>
</form>
Ответы (1 шт):
Автор решения: D. Violet
→ Ссылка
пример:
@app.route('/profile', methods=['GET', 'POST'])
def profile():
if request.method == 'POST':
print(request.form)
return 'OK', 200
elif request.method == 'GET':
return render_template('profile.html')