日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

python - Flask寫的注冊頁面,當(dāng)注冊時(shí),如果填寫數(shù)據(jù)庫里有的相同數(shù)據(jù),就報(bào)錯(cuò)

瀏覽:251日期:2022-09-15 17:24:38

問題描述

Flask寫的注冊頁面,當(dāng)注冊時(shí),如果填寫數(shù)據(jù)庫里有的相同數(shù)據(jù),就報(bào)錯(cuò)

想知道如何解決

注冊路由代碼

python - Flask寫的注冊頁面,當(dāng)注冊時(shí),如果填寫數(shù)據(jù)庫里有的相同數(shù)據(jù),就報(bào)錯(cuò)

注冊頁面代碼

python - Flask寫的注冊頁面,當(dāng)注冊時(shí),如果填寫數(shù)據(jù)庫里有的相同數(shù)據(jù),就報(bào)錯(cuò)

報(bào)錯(cuò)

E:PythonPython35-32libsite-packagespymysqlcursors.py:166: Warning: (1366, 'Incorrect string value: ’xD6xD0xB9xFAxB1xEA...’ for column ’VARIABLE_VALUE’ at row 479') result = self._query(query)127.0.0.1 - - [21/Feb/2017 09:17:37] 'POST /register HTTP/1.1' 200 -Debugging middleware caught exception in streamed response at a point where response headers were already sent.Traceback (most recent call last): File 'E:PythonPython35-32libsite-packagesflaskapp.py', line 2000, in __call__ return self.wsgi_app(environ, start_response) File 'E:PythonPython35-32libsite-packagesflaskapp.py', line 1996, in wsgi_app ctx.auto_pop(error) File 'E:PythonPython35-32libsite-packagesflaskctx.py', line 387, in auto_pop self.pop(exc) File 'E:PythonPython35-32libsite-packagesflaskctx.py', line 376, in pop app_ctx.pop(exc) File 'E:PythonPython35-32libsite-packagesflaskctx.py', line 189, in pop self.app.do_teardown_appcontext(exc) File 'E:PythonPython35-32libsite-packagesflaskapp.py', line 1898, in do_teardown_appcontext func(exc) File 'E:PythonPython35-32libsite-packagesflask_sqlalchemy__init__.py', line 822, in shutdown_session self.session.commit() File 'E:PythonPython35-32libsite-packagessqlalchemyormscoping.py', line 157, in do return getattr(self.registry(), name)(*args, **kwargs) File 'E:PythonPython35-32libsite-packagessqlalchemyormsession.py', line 874, in commit self.transaction.commit() File 'E:PythonPython35-32libsite-packagessqlalchemyormsession.py', line 461, in commit self._prepare_impl() File 'E:PythonPython35-32libsite-packagessqlalchemyormsession.py', line 441, in _prepare_impl self.session.flush() File 'E:PythonPython35-32libsite-packagessqlalchemyormsession.py', line 2139, in flush self._flush(objects) File 'E:PythonPython35-32libsite-packagessqlalchemyormsession.py', line 2259, in _flush transaction.rollback(_capture_exception=True) File 'E:PythonPython35-32libsite-packagessqlalchemyutillanghelpers.py', line 60, in __exit__ compat.reraise(exc_type, exc_value, exc_tb) File 'E:PythonPython35-32libsite-packagessqlalchemyutilcompat.py', line 187, in reraise raise value File 'E:PythonPython35-32libsite-packagessqlalchemyormsession.py', line 2223, in _flush flush_context.execute() File 'E:PythonPython35-32libsite-packagessqlalchemyormunitofwork.py', line 389, in execute rec.execute(self) File 'E:PythonPython35-32libsite-packagessqlalchemyormunitofwork.py', line 548, in execute uow File 'E:PythonPython35-32libsite-packagessqlalchemyormpersistence.py', line 181, in save_obj mapper, table, insert) File 'E:PythonPython35-32libsite-packagessqlalchemyormpersistence.py', line 835, in _emit_insert_statements execute(statement, params) File 'E:PythonPython35-32libsite-packagessqlalchemyenginebase.py', line 945, in execute return meth(self, multiparams, params) File 'E:PythonPython35-32libsite-packagessqlalchemysqlelements.py', line 263, in _execute_on_connection return connection._execute_clauseelement(self, multiparams, params) File 'E:PythonPython35-32libsite-packagessqlalchemyenginebase.py', line 1053, in _execute_clauseelement compiled_sql, distilled_params File 'E:PythonPython35-32libsite-packagessqlalchemyenginebase.py', line 1189, in _execute_context context) File 'E:PythonPython35-32libsite-packagessqlalchemyenginebase.py', line 1393, in _handle_dbapi_exception exc_info File 'E:PythonPython35-32libsite-packagessqlalchemyutilcompat.py', line 203, in raise_from_cause reraise(type(exception), exception, tb=exc_tb, cause=cause) File 'E:PythonPython35-32libsite-packagessqlalchemyutilcompat.py', line 186, in reraise raise value.with_traceback(tb) File 'E:PythonPython35-32libsite-packagessqlalchemyenginebase.py', line 1182, in _execute_context context) File 'E:PythonPython35-32libsite-packagessqlalchemyenginedefault.py', line 470, in do_execute cursor.execute(statement, parameters) File 'E:PythonPython35-32libsite-packagespymysqlcursors.py', line 166, in execute result = self._query(query) File 'E:PythonPython35-32libsite-packagespymysqlcursors.py', line 322, in _query conn.query(q) File 'E:PythonPython35-32libsite-packagespymysqlconnections.py', line 835, in query self._affected_rows = self._read_query_result(unbuffered=unbuffered) File 'E:PythonPython35-32libsite-packagespymysqlconnections.py', line 1019, in _read_query_result result.read() File 'E:PythonPython35-32libsite-packagespymysqlconnections.py', line 1302, in read first_packet = self.connection._read_packet() File 'E:PythonPython35-32libsite-packagespymysqlconnections.py', line 981, in _read_packet packet.check_error() File 'E:PythonPython35-32libsite-packagespymysqlconnections.py', line 393, in check_error err.raise_mysql_exception(self._data) File 'E:PythonPython35-32libsite-packagespymysqlerr.py', line 107, in raise_mysql_exception raise errorclass(errno, errval)sqlalchemy.exc.IntegrityError: (pymysql.err.IntegrityError) (1062, 'Duplicate entry ’123’ for key ’ix_users_username’') [SQL: ’INSERT INTO users (username, password) VALUES (%(username)s, %(password)s)’] [parameters: {’username’: ’123’, ’password’: ’123’}]127.0.0.1 - - [21/Feb/2017 09:17:42] 'POST /register HTTP/1.1' 200 -

問題解答

回答1:

你應(yīng)該先檢查是否此用戶已經(jīng)注冊,沒注冊再db.session.add()。 如果非要想更新主鍵或unique的記錄,可以試試db.session.merge()。 其實(shí)執(zhí)行的是select+update

回答2:

sqlalchemy.exc.IntegrityError: (pymysql.err.IntegrityError) (1062, 'Duplicate entry ’123’ for key ’ix_users_username’') [SQL: ’INSERT INTO users (username, password) VALUES (%(username)s, %(password)s)’] [parameters: {’username’: ’123’, ’password’: ’123’}]

mysql是否設(shè)置了主鍵id?

回答3:

ix_users_username不能是重復(fù)的,換個(gè)username試試

回答4:

username unique

回答5:

我在前面加了個(gè)查詢判斷 可以了

@app.route('/register', methods=['GET', 'POST'])def register(): form = RegisterForm() if form.validate_on_submit():user = User( username=form.username.data, password=form.password.data)if(User.query.filter_by(username=user.username).first()): flash('當(dāng)前用戶名已經(jīng)注冊!') return render_template('/register.html', form=form)else: flash('注冊成功!') db.session.merge(user) return render_template('/register.html', form=form) return render_template('/register.html', form=form)

python - Flask寫的注冊頁面,當(dāng)注冊時(shí),如果填寫數(shù)據(jù)庫里有的相同數(shù)據(jù),就報(bào)錯(cuò)

標(biāo)簽: Python 編程
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久香蕉精品| 欧美激情亚洲| 国产精品视频一区二区三区四蜜臂| 久久久一二三| 欧美国产美女| 久久影视三级福利片| 国产精品v日韩精品v欧美精品网站 | 亚洲精品人人| 午夜亚洲精品| 视频一区中文字幕| 亚洲尤物av| 日韩精品久久久久久| 日韩二区三区在线观看| **爰片久久毛片| 日韩精品视频网站| 日本欧美一区二区| 91精品国产一区二区在线观看| 日韩精选在线| 久久国内精品视频| 国产精品观看| 精品国产一区二区三区av片| 国产aⅴ精品一区二区三区久久| 国产aⅴ精品一区二区三区久久| 色乱码一区二区三区网站| 久久国产日韩| 丝袜a∨在线一区二区三区不卡| 少妇精品久久久一区二区三区| 日韩av三区| 精品高清久久| 香蕉久久99| 亚洲一区不卡| 亚洲bt欧美bt精品777| 国产精品久久久免费| 高清不卡亚洲| 国产精品日韩久久久| 日韩精品一级| 成人一区而且| 伊人久久亚洲影院| 久久国产日韩欧美精品| 国产精品麻豆久久| 在线精品小视频| 婷婷亚洲成人| 精品国产18久久久久久二百| 免费观看不卡av| 亚洲精品乱码| 久久99蜜桃| 久久久天天操| 亚洲精品福利| 日韩成人精品一区二区| 欧美不卡高清| 一区二区电影| 国产乱人伦精品一区| 精品久久视频| 久久国产精品亚洲77777| 亚洲永久精品唐人导航网址| 精品视频自拍| 久久亚洲国产| 日韩1区2区日韩1区2区| 国产精品传媒麻豆hd| 亚洲日本网址| 久久国产日本精品| 91精品国产成人观看| 蜜桃久久久久久久| 久久成人高清| 亚洲少妇一区| 日韩三级久久| 欧美aa一级| 中文一区一区三区免费在线观 | 老鸭窝毛片一区二区三区| 日韩精品导航| 宅男在线一区| 久久狠狠久久| 天使萌一区二区三区免费观看| 综合一区二区三区| 韩国一区二区三区视频| 欧美一区二区性| 欧美伊人久久| 性感美女一区二区在线观看| 欧美欧美黄在线二区| 日韩av有码| 国产日产精品_国产精品毛片| 亚洲三级欧美| 青青青国产精品| 蜜桃精品在线| 色综合视频一区二区三区日韩| 久久三级福利| 91麻豆精品激情在线观看最新| 欧美日韩国产免费观看视频| 少妇高潮一区二区三区99| 极品日韩av| 欧美精品国产一区| 欧美日韩国产亚洲一区| 国产精品99精品一区二区三区∴ | 日韩精品一区二区三区免费视频| 欧美一级精品| 国产福利资源一区| 蜜臀av一区二区三区| 国产一区二区三区久久| 日本不卡中文字幕| 不卡一区综合视频| 香蕉视频亚洲一级| 国产亚洲精品精品国产亚洲综合| 国产亚洲高清视频| 日本黄色精品| 激情偷拍久久| 日韩在线短视频| 高清av一区| 欧美精品三级在线| 欧美成a人国产精品高清乱码在线观看片在线观看久 | 日韩中文一区二区| 久久久水蜜桃av免费网站| 国产精品调教视频| 中文一区在线| 精品国产一区二区三区av片| 日韩一区二区三区免费视频 | 免费视频一区二区三区在线观看| 少妇精品久久久一区二区三区| 性欧美videohd高精| 精品99在线| 国产精品久久久久毛片大屁完整版| 亚洲91网站| 免费一区二区视频| 久久亚洲风情| 亚洲精品成人| 91精品电影| 日韩一区二区三区在线免费观看| 美女国产一区二区三区| 日本99精品| 亚洲精品1区| 午夜亚洲一区| 91久久亚洲| 亚洲在线久久| 国产在线日韩| 亚洲精品99| 狠狠色综合网| 亚洲欧美日韩国产一区二区| 久久亚洲在线| 亚洲精品网址| 欧美一区二区三区高清视频| 亚洲精品午夜av福利久久蜜桃| 亚洲91视频| 欧美~级网站不卡| 福利片在线一区二区| 国产精品videossex久久发布 | 日韩高清不卡在线| 日韩高清不卡一区二区| 久久精品国产68国产精品亚洲| 人人草在线视频| 成人精品动漫一区二区三区| 日本不卡视频在线| 日韩一区二区三区免费视频| 最新国产精品久久久| 亚洲欧洲专区| 中文字幕一区二区三区四区久久| 日本不卡一二三区黄网| 日韩1区2区3区| 麻豆国产精品视频| 精品久久在线| 久久美女精品| 一区二区自拍| 午夜天堂精品久久久久| 午夜在线精品偷拍| 日本va欧美va精品发布| 日韩不卡免费视频| 国产三级精品三级在线观看国产| 国产麻豆精品久久| 日本欧美久久久久免费播放网| 久久的色偷偷| 国产成人精品免费视| 婷婷国产精品| 麻豆亚洲精品| 国产精品一国产精品| 麻豆精品视频在线观看免费| 久久精品1区| 欧美精品激情| 国产精品一区二区三区四区在线观看| 69精品国产久热在线观看| 91av亚洲| 宅男噜噜噜66国产日韩在线观看| 日韩av中文字幕一区二区三区| 国产日产一区| 免费av一区二区三区四区| 美女精品在线观看| 久久久免费人体| 蜜桃视频在线网站| 日本中文字幕不卡| 激情久久99| 热久久免费视频| 国产精品流白浆在线观看| 1024精品一区二区三区| 鲁大师成人一区二区三区| 欧美久久精品| av在线最新| 亚洲精品看片| 水蜜桃久久夜色精品一区| 亚洲免费婷婷| 久久超级碰碰| 日韩视频免费| 国产视频一区二| 狠狠操综合网|