我使用以下数据模型创建一对多关系。如何制作主键和外键?
class Candidate(db.Model):
name = db.StringProperty()
lastname = db.StringProperty()
email = db.StringProperty()
mobno = db.StringProperty()
grad = db.StringProperty()
pg = db.StringProperty()
cloc = db.StringProperty()
ploc = db.StringProperty()
class Skills(db.Model)
skillcode=db.IntegerProperty()
skillname=StringProperty()
每位候选人都有很多技能。如何制作主键和外键?
答案 0 :(得分:4)
应用引擎数据存储区不像mysql或sqlite等关系数据库那样工作。这是一个无模式的数据库。每个型号都有一把钥匙。该密钥可以由id和/或密钥名称定义。在实例化模型时,可以将key_name作为关键字参数传递,而在大多数情况下,会自动分配id。
可以将ReferenceProperty视为等效的外键。 此属性可以将另一个模型实例“作为值保存,并使用关键字参数,您可以指定模型必须的类型。
appengine上的python运行时有两个数据存储模块,一个名为db,另一个名为ndb。看一下ndb,它是较新的api,可以帮助你进行缓存;我也发现它有一个更容易使用的API。