个人理解: 因为flask-sqlalchemy是基于sqlalchemy的,就像你写代码的时候,db.column也可以通过导入SQLALCHEMY来实现命令补全(参考: PyCharm Flask-SQLAlchemy 不会自动补全db.Column、Integer、String等,但下载的示例可以。),所以应该在python shell也是可以使用的.(并且flask也是个python框架)
个人理解,不知道是否准确,大佬回答后@一下我.
这好像不是同一个联系~
因为书中说明的是使用 flask shell 激活上下文后才可使用 db.create_all()
但是,现在的情况是 使用 python shell, 未激活程序上下文,也可使用 db.create_all()
你说的python shell是指项目目录的python shell吗,还是指公共环境的python shell?
不会的,你可能哪里搞错了……可以写一个最简单的程序测试下。
执行 db.create_all()
需要从程序实例的 config
属性获取数据库配置,没有推送程序上下文只会触发下面这个 RuntimeError
异常:
下次有问题发论坛就好,不用发微信消息(微信不适合交流技术问题)。