我正在使用web2py以密码中的“at”符号连接到数据库,例如“P @ sswd”。

db = DAL('mysql://user1:P@sswd@localhost/test')

这被解释为使用密码“P”与主机“sswd @ localhost”的连接。

我尝试了明显的URL转义技术,但是失败了:
db = DAL('mysql://user1:P%40sswd@localhost/test')

是否有资源说明这些URL样式连接字符串中使用的转义约定?

最佳答案

您应该使用decode_credentials选项:

db = DAL('mysql://user1:P%40sswd@localhost/test', decode_credentials=True)

关于python - 转义web2py数据库连接字符串中的特殊字符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13945733/

10-12 21:45