- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Bottle Cork 通过 SQLite 后端进行身份验证,并尝试创建一个用户:
@bottle.post('/ajax/users/create/')
def create_user():
response.content_type = 'application/json'
password = bottle.request.forms.get('password')
username = bottle.request.forms.get('username')
role = bottle.request.forms.get('role')
ret = create_user_by_admin(username, password, role)
response.content_type = 'application/json'
return dumps({"status": ret.get('ok')})
def create_user_by_admin(username, password, role):
try:
auth.create_user(username, role, password)
return dict(ok=True, msg='')
except Exception, e:
return dict(ok=False, msg=e.message)
Bottle 应用程序日志:
127.0.0.1 - - [13/Jul/2014 13:56:38] "POST /ajax/users/create/ HTTP/1.1" 200 16
jQuery 发布响应:{"status": true}
如果我第一次创建用户,响应为 True(用户已成功创建),但数据库中没有新用户。下一个响应将返回 False 和错误消息:
127.0.0.1 - - [13/Jul/2014 13:56:38] "POST /ajax/users/create/ HTTP/1.1" 200 16
/home/art/projects/leggera/app/views.py:33: DeprecationWarning: BaseException.message has been deprecated as of Python 2.6
return dict(ok=False, msg=e.message)
这意味着,创建了一个用户,但是...数据库中仍然没有新用户(我正在使用 SQLiteMan 查看数据库的内容)!
数据库未锁定,chmod +rwx
...我该如何解决此问题?
最佳答案
后端实现永远不会提交事务。
科克问题跟踪器中有两个问题显示了人们如何解决此问题:
Issue 66是一个拉取请求,用于更新示例以添加 backend.connection.commit()
调用:
auth.create_user(username, role, password)
auth._store.connection.commit()
Issue 63关于 SQLite 后端的线程问题;但包含的代码使用后端的子类来设置隔离级别以强制自动提交。
请注意,第 63 期显示后端完全不适合多线程环境;我会使用 SQLAlchemy 后端,因为它可以正确处理 SQLite 和线程。
快速粗略地浏览一下该后端也会发现它看起来也不处理提交。
关于python - Bottle Cork 创建了一个用户,但没有将其保存到数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24721528/
我正在使用 Bottle Cork 通过 SQLite 后端进行身份验证,并尝试创建一个用户: @bottle.post('/ajax/users/create/') def create_user(
目标 用户登录,并在成功授权后,在登录表单所在的同一位置(从 MongoDB 数据库)加载管理页面,例如: 登录表单 > 提交 [成功] > 从数据库加载的内容与表单所在的位置相同 我的尝试 我想我知
我对 Bottle and Cork 还很陌生。我正在开发一个使用 Bottle 作为框架并使用 MongoDB 作为后端的网络应用程序。我想弄清楚如何使用 Cork 实现用户登录系统。 我阅读了 C
我是一名优秀的程序员,十分优秀!