0
我爲數據庫設置django模型,目前我的方法是直接將數據庫表映射到模型。但是,在某些情況下,我實際上需要以相對複雜的觀點工作。具體的情況是,我有一個表(在報告中,而不是數據庫),這需要證明從相關數據庫中的表合併列表:django中的模型和數據庫視圖
class Entity(Models):
name = CharField()
class LargeEntity(Entity):
size = FloatField()
class SmallEntity(Entity):
type = ForeignKey(SmallEntityType)
的報告(和形式)需要顯示:
Entity name - entity.name
Large/Small - 'Large' if entity is LargeEntity else 'Small'
size/type - entity.size if entity is LargeEntity else 'type'
這可以通過SQL中的CASE
語句完成,但由於這在我的數據中發生了很多,我寧願找到一個更好的解決方案。
更改報告格式不在選項中,但如果有更好的實現方法,可以更改數據庫。