Thanks for your great e-book which I have brought it from your site.
Now I am studying the chapter 4, when run the following command in terminal(mac):
flask db migrate -m "posts table"
there is error:
(venv) A1706-084:microblog kd$ flask db migrate -m "posts table"
/anaconda3/envs/venv/lib/python3.6/site-packages/flask_sqlalchemy/init.py:774: UserWarning: Neither SQLALCHEMY_DATABASE_URI nor SQLALCHEMY_BINDS is set. Defaulting SQLALCHEMY_DATABASE_URI to "sqlite:///:memory:".
'Neither SQLALCHEMY_DATABASE_URI nor SQLALCHEMY_BINDS is set. '
INFO [alembic.runtime.migration] Context impl SQLiteImpl.
INFO [alembic.runtime.migration] Will assume non-transactional DDL.
Traceback (most recent call last):
File "/anaconda3/envs/venv/bin/flask", line 11, in
sys.exit(main())
File "/anaconda3/envs/venv/lib/python3.6/site-packages/flask/cli.py", line 513, in main
cli.main(args=args, prog_name=name)
File "/anaconda3/envs/venv/lib/python3.6/site-packages/flask/cli.py", line 380, in main
return AppGroup.main(self, *args, **kwargs)
File "/anaconda3/envs/venv/lib/python3.6/site-packages/click/core.py", line 697, in main
rv = self.invoke(ctx)
File "/anaconda3/envs/venv/lib/python3.6/site-packages/click/core.py", line 1066, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/anaconda3/envs/venv/lib/python3.6/site-packages/click/core.py", line 1066, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/anaconda3/envs/venv/lib/python3.6/site-packages/click/core.py", line 895, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/anaconda3/envs/venv/lib/python3.6/site-packages/click/core.py", line 535, in invoke
return callback(*args, **kwargs)
File "/anaconda3/envs/venv/lib/python3.6/site-packages/click/decorators.py", line 17, in new_func
return f(get_current_context(), *args, **kwargs)
File "/anaconda3/envs/venv/lib/python3.6/site-packages/flask/cli.py", line 257, in decorator
return __ctx.invoke(f, *args, **kwargs)
File "/anaconda3/envs/venv/lib/python3.6/site-packages/click/core.py", line 535, in invoke
return callback(*args, **kwargs)
File "/anaconda3/envs/venv/lib/python3.6/site-packages/flask_migrate/cli.py", line 90, in migrate
rev_id, x_arg)
File "/anaconda3/envs/venv/lib/python3.6/site-packages/flask_migrate/init.py", line 197, in migrate
version_path=version_path, rev_id=rev_id)
File "/anaconda3/envs/venv/lib/python3.6/site-packages/alembic/command.py", line 176, in revision
script_directory.run_env()
File "/anaconda3/envs/venv/lib/python3.6/site-packages/alembic/script/base.py", line 425, in run_env
util.load_python_file(self.dir, 'env.py')
File "/anaconda3/envs/venv/lib/python3.6/site-packages/alembic/util/pyfiles.py", line 81, in load_python_file
module = load_module_py(module_id, path)
File "/anaconda3/envs/venv/lib/python3.6/site-packages/alembic/util/compat.py", line 83, in load_module_py
spec.loader.exec_module(module)
File "", line 678, in exec_module
File "", line 219, in _call_with_frames_removed
File "migrations/env.py", line 87, in
run_migrations_online()
File "migrations/env.py", line 80, in run_migrations_online
context.run_migrations()
File "", line 8, in run_migrations
File "/anaconda3/envs/venv/lib/python3.6/site-packages/alembic/runtime/environment.py", line 836, in run_migrations
self.get_context().run_migrations(**kw)
File "/anaconda3/envs/venv/lib/python3.6/site-packages/alembic/runtime/migration.py", line 321, in run_migrations
for step in self._migrations_fn(heads, self):
File "/anaconda3/envs/venv/lib/python3.6/site-packages/alembic/command.py", line 156, in retrieve_migrations
revision_context.run_autogenerate(rev, context)
File "/anaconda3/envs/venv/lib/python3.6/site-packages/alembic/autogenerate/api.py", line 415, in run_autogenerate
self._run_environment(rev, migration_context, True)
File "/anaconda3/envs/venv/lib/python3.6/site-packages/alembic/autogenerate/api.py", line 427, in _run_environment
raise util.CommandError("Target database is not up to date.")
alembic.util.exc.CommandError: Target database is not up to date.
Could you tell me how to solve it, thanks!