我想在Django orm中做一些不寻常的事情。我有型号Car
。我怎样才能用附加信息扩展它,按照类型分开存储在另一个模型中?多种型号的额外信息
例如,要输入Car
“我的卡车”,其类型是truck
,我想用TruckInfo
模型扩展它。
另一个条目“我的公交车”我想扩展BusInfo
模型。
换句话说,我想做一个浮动关系。
它可以通过添加到类型为Car
的列,并执行SELECT
两次来实现:1)用于选择汽车,2)用于使用Car.Type字段选择额外信息。但这是可怕的解决方案。我想在一个查询中完成。
也许你知道纯SQL中的解决方案,它也会有用。谢谢。
看到这个:https://docs.djangoproject.com/en/dev/topics/db/models/#multi-table-继承 –
这个在SQL中定义超类型/子类型关系的答案:http://stackoverflow.com/questions/1722741/defining-a-one-to-one-relationship-in-sql-server/1723519#1723519 –