2010-12-08 57 views
1

說我有3個實體:如何確定Google App Engine類的類型?

class A(db.Model): 
    something = db.StringProperty() 

class B(db.Model): 
    somethingelse = db.StringProperty() 

class C(db.Model): 
    reference = db.ReferenceProperty() 

其中在C參考可以是A或B,如何確定我,給定的C的實例中,基準的類型(A或B)?

問候,

約翰尼

回答

0

你可以做到這一點沒有獲取的引用實體是這樣的:

c_instance = C.get(...) 

referenced_kind = C.reference.get_value_for_datastore(c_instance).kind() 

,或者,如果你已經有了一個實體:

entity.key().kind() 

有關更多信息,請參閱KeyProperty上的文檔。

+0

thanks a million,Model.kind()返回模型的類型,通常是Model子類的名稱。 – Johnny 2010-12-08 22:50:13