А я вот в кодировках запутался. Замучил меня этот проклятый UnicodeDecodeError
Перечитал на форуме почти все, что было про кодировки, но просветление, как ни странно, не наступило. Даже вот этот
важный документ изучил.
Ковыряю Flask Totorial. Немного изменил логику, имя пользователя и пароль сравнивается с содежимым таблицы в БД.
.....
@app.route('/login', methods=['GET', 'POST'])
def login():
error = None
if request.method == 'POST':
select = "select first 1 * from users where usr_name='%s'" %request.form['username']
cur = g.db.cursor()
cur.execute(select)
if cur.rowcount == 0:
error = 'name'
for row in cur:
if request.form['username'] != row[1]:
error = 'Invalid username'
elif request.form['password'] != row[2]:
error = 'Invalid password'
else:
session['logged_in'] = True
flash('You were logged in')
return redirect(url_for('show_entries'))
return render_template('login.html', error=error)
Если ввести имя пользователя английскими символами, все нормально. Если русскими, то UnicodeDecodeError. Перепробовал варианты с # _*_ coding, encode и decode. Не получается. Может быть кто просветит ?
Заранее спасибо
ОС ubuntu 10.4-server