我有两个不同的 Django 模型,“modelA”和“modelB”,它们只有两个共同的列:“EMAIL”和“NAME”,每个模型中的其余列都不同。我想从“modelA”返回一个对象列表,但在“modelB”中不包含重复的“EMAIL”和“NAME”组合...
例如,如果“modelA”具有以下对象:
EMAIL NAME SOMEFIELD
bob@email.com Bob ....
bob@email.com Robert ....
并且“modelB”具有对象:
EMAIL NAME ADIFFERENTFIELD
bob@email.com Bob ....
sammy@email.com Sam ....
bob@email.com Bobby ....
我希望最终的“modelA”查询集只返回:
EMAIL NAME SOMEFIELD
bob@email.com Robert ....
执行此 Django 的最有效方法是什么?我现在能想到的最佳解决方案是获取“modelA”查询集并遍历每个对象以测试“modelB”中是否存在相同的“EMAIL”和“NAME”组合,如果不存在,添加将该对象添加到新列表中。但这听起来非常低效。尽管我对 Django 的经验很少,但我知道一定有更好的方法 :) 如果相关,我的数据库正在使用 PostgreSQL。提前致谢。