采用以下模型:
class Thing(db.Model):
id = db.Column(INTEGER, primary_key=True)
data = db.Column(VARCHAR(255))
我想调用一个方法来强制Thing.data
中的所有字符都是小写的(想想:str.lower
),并且实现与以下类似的方法更可取:
class Thing(db.Model):
id = db.Column(INTEGER, primary_key=True)
data = db.Column(VARCHAR(255), on_insertion=lambda s: s.lower())
我相信一个可行的选择将是以下,但我希望有一些更惯用的东西:
class Thing(db.Model):
id = db.Column(INTEGER, primary_key=True)
data = db.Column(VARCHAR(255))
def __init__(self, id, data):
self.id = id
self.data = data.lower()