2011-12-18 6 views
6

Czy można ustawić wartości domyślne dla modeli? Na przykład rozważyć ten model z AppEngine DokumentacjiDomyślne wartości modeli w 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) 

Chcę ustawić domyślną wartość name być „Unnamed Pet”, więc jeśli użytkownik nie ma go dostarczyć, Wartości domyślne podjęte. Czy to możliwe?

PS: Chcę to być wykonane w klasie modelu Pet samego

Odpowiedz

9

Użyj atrybut domyślny, np

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

Dzięki Mam stara się znaleźć to w dokumentacji kiedyś teraz – Gautam

+0

miałem zamiar opublikować link do Dokumentów, a potem odkryć, że jej nie (no) dokumentu. Nick, zrób coś z tym :) –

+0

BTW: Nie wiem, czy działa z wymaganym atrybutem, być może będziesz musiał podać wartość w polu ctor do nazwy, nawet jeśli ma ona wartość domyślną, która prawie czyni domyślny atrybut w tym przypadku jest bezużyteczny. –