我正在使用flask migrateflask-sqlalchemy进行数据库创建和迁移.
一切都工作正常,直到我更改我的数据库用户密码包含'@'然后它停止工作所以,我更新了我的代码基于 写密码包含特殊字符时的连接字符串
它适用于应用但不适用于烧瓶迁移,它在迁移时显示错误
即 python manage.py db migrate
ValueError: invalid interpolation syntax in u'mysql://user:p%40ssword@localhost/testdb' at position 15
Run Code Online (Sandbox Code Playgroud)
密码在这里被p@ssword转义urlquote(见上面的问题链接).
完整错误堆栈:
Traceback (most recent call last):
File "manage.py", line 20, in <module>
manager.run()
File "/usr/local/lib/python2.7/dist-packages/flask_script/__init__.py", line 412, in run
result = self.handle(sys.argv[0], sys.argv[1:])
File "/usr/local/lib/python2.7/dist-packages/flask_script/__init__.py", line 383, in handle
res = handle(*args, **config)
File "/usr/local/lib/python2.7/dist-packages/flask_script/commands.py", line 216, in __call__
return self.run(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/flask_migrate/__init__.py", line 177, in migrate
version_path=version_path, rev_id=rev_id)
File "/usr/local/lib/python2.7/dist-packages/alembic/command.py", line 117, …Run Code Online (Sandbox Code Playgroud) python mysql connection-string flask-sqlalchemy flask-migrate