2011-12-18 81 views
6

是否可以设置模型的默认值?例如,考虑从AppEngine上的文档这个模型Google App Engine中模型的默认值

from google.appengine.ext import db 

class Pet(db.Model): 
    name = db.StringProperty(required=True) 
    type = db.StringProperty(required=True, choices=set(["cat", "dog", "bird"])) 
    birthdate = db.DateProperty() 
    weight_in_pounds = db.IntegerProperty() 
    spayed_or_neutered = db.BooleanProperty() 
    owner = db.UserProperty(required=True) 

我想设置的name的默认值是“无名宠物”,因此如果用户不提供的话,采取的默认值。这可能吗?

PS:我想这个模型中的类Pet本身

回答

9

使用默认的属性,例如做

class Pet(db.Model): 
    name = db.StringProperty(required=True, default="(unnamed)") 
+0

感谢我一直在尝试了一段时间的文档中找到这个现在 – Gautam 2011-12-18 12:19:57

+0

我要发布一个链接到文档,然后我发现它不是(井)文件。尼克请做点什么:) – 2011-12-18 12:22:42

+0

顺便说一句:我不知道它是否适用于所需的属性,你可能必须将ctor中的值传递给名称字段,即使它有一个默认值,这几乎可以使在这种情况下的默认属性是无用的。 – 2011-12-18 12:25:38