Peewee一对一连接
Peewee one-to-one connection
我正在尝试定义两个 table,它们彼此具有一对一的关系。但我不能那样做。
我的模特是这样的:
class Model1(BaseModel):
field1 = TextField()
class Model2(BaseModel):
rel_model = ForeignKeyField(Model1, backref="model1", unique=True)
field2 = TextField
此模型创建一对多关系。
Peewee 没有超出具有唯一约束的外键的 1 对 1 的概念,这是您声明的内容。
如果您想要的话,只需将其作为 属性 在反向引用中公开即可:
class Model1(BaseModel):
@property
def model2(self):
return self.model2_set.get()
class Model2(BaseModel):
model1 = ForeignKeyField(Model1, unique=True)
顺便说一下,您的示例中的反向引用是反向的 - 它是 "model2" 个实例的反向引用。
我正在尝试定义两个 table,它们彼此具有一对一的关系。但我不能那样做。
我的模特是这样的:
class Model1(BaseModel):
field1 = TextField()
class Model2(BaseModel):
rel_model = ForeignKeyField(Model1, backref="model1", unique=True)
field2 = TextField
此模型创建一对多关系。
Peewee 没有超出具有唯一约束的外键的 1 对 1 的概念,这是您声明的内容。
如果您想要的话,只需将其作为 属性 在反向引用中公开即可:
class Model1(BaseModel):
@property
def model2(self):
return self.model2_set.get()
class Model2(BaseModel):
model1 = ForeignKeyField(Model1, unique=True)
顺便说一下,您的示例中的反向引用是反向的 - 它是 "model2" 个实例的反向引用。