Django管理页面中外键字段的list_filter
在Django管理页面中使用外部字段进行列表过滤
假设我有一些模型
class Company():
name varchar(50)
field1 varchar(50)
class Client()
name varchar(50)
company ForeignKey(Company)
现在我想在Django管理页面中对Client模型的field1进行过滤,应该怎么做呢?
我试过 list_filter = ['company_field1', 'company_name'],但是没有成功。有没有解决办法?
我使用的是Django 1.2版本。
提前谢谢大家!
2 个回答
4
在Django 1.2中,我用过一种比较“黑科技”的方法来解决这类问题。
首先,在你的数据库里,创建一个视图,这个视图是两个表通过外键关系连接起来的。然后让Django使用这个视图,而不是直接使用真实的表。接着,在这个视图上设置触发器,这样当有数据写入时,就能把数据正确地导入到相应的表里。