在这段代码中:
class Page(Base):
__tablename__ = 'page'
id = Column(Integer, primary_key=True)
name = Column(Text, unique=True)
data = Column(Text)
def __init__(self, name, data):
self.name = name
self.data = data
这是一个模型,在金字塔框架(Python的框架),并将于SQLAlchemy的,以后使用的名称和数据初始化两次:
name = Column... # First assignments.
self.name = name # Second time assignments.
在金字塔的教程中,根据赋值运算符不能在python中重载的事实,是否需要“名称=列(...)”?还是我完全错了,name = Column(...)有一些特殊含义?
外部作用域声明了一个有利于该类的字段。内部范围将对象的字段初始化为特定值。
name = Column(...)
正在描述Page该类的成员之一(“ Page由称为' name',... 的字段组成),而
self.name = name
正在将的一个特定实例初始化Page为一个特定值。(“ Page()名称为” "framistan")。
分享改善这个答案
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。