正确代码
def wrap(f):
pass
class AB(object):
__setattr__ = wrap(object.__setattr__)
为什么函数放在下面就出现找不到错误:
class AB(object):
__setattr__ = wrap(object.__setattr__)
def wrap(f):
pass
而 db = SQLAlchemy(app) 实例app放在下面定义不会出错?有没有关于解释这些的文档呢,关于函数,实例如何放置在合适的位置?
db = SQLAlchemy(app)
class User(db.Model):
pass
app = Flask(__name__)
1
Septembers 2015-06-23 12:21:34 +08:00
Python的 面向对象 是建立在 面向过程 的基础之上的 所以对执行顺序敏感
|
2
cc7756789 OP @Septembers 但为什么实例化可以在下面进行,不会出现找不到对象的情况?
|
3
aec4d 2015-06-23 13:18:39 +08:00
第二个例子你是用什么执行的?不会出错???
|
6
tongle 2015-06-23 14:37:15 +08:00
和执行时的变量作用域有关系吧
|
7
caoyue 2015-06-23 14:45:14 +08:00
问题就不对吧,第三段应该执行不了
|
8
cc7756789 OP @aec4d http://stackoverflow.com/questions/20744277/sqlalchemy-create-all-does-not-create-tables 我是参考了这个例子的,难道这个答案是错误的?
|