我有两个课程Container
和Field
课程。我想将Field
类表示为它包含的值。它需要输入,以便我可以用它做一些有意义的操作。
import datetime
class Field(object):
date = datetime.date.today()
def __repr__(self):
return self.date
class Container(object):
value = Field().date
value_2 = Field()
c = Container()
print c.value.isoformat() # perfect
print c.value_2.isoformat() # boo fails
我知道SQLAlchemy在这些方面做了些什么。您可以将属性定义为为您返回类型值的列实例。
答案 0 :(得分:2)
这是descriptor.类__get__
上基本定义__set__
方法的完美用例,并从中返回预期值。您还可以根据自己的要求定义Titanium.UI.TextField,例如不允许他们设置其他类型的值。
Field