I just got started using flask-migrate
and I encounter some problems with it.
In order to get myself familiarized with it, I started a new project with a mock MySQL database.
I run the migration as following
export FLASK_APP=run.py
flask db init
flask db migrate
flask db upgrade
and it throws this error:
...
File "c:\users\terkea\appdata\local\programs\python\python36\lib\site-packages\MySQLdb\connections.py", line 226, in query
_mysql.connection.query(self, query)
sqlalchemy.exc.OperationalError: (MySQLdb._exceptions.OperationalError) (1050, "Table 'user' already exists")
[SQL:
CREATE TABLE `User` (
id INTEGER NOT NULL AUTO_INCREMENT,
public_id VARCHAR(50),
name VARCHAR(50),
password VARCHAR(255),
PRIMARY KEY (id),
UNIQUE (name),
UNIQUE (public_id)
)
]
(Background on this error at: http://sqlalche.me/e/e3q8)
The solution in my case was to
__tablename__
from all my models