我在我的python django应用程序中使用sqlite3数据库:我正在定义我的表结构,它类似于我的实际表模式。
table1 having three column:
1. id | primary key | int
2. name | text
3. address | text
table2 having four column:
1. id | primary key | int
2. name_id | foreign key | int
3. name_info | text
4. address_info | text
table3 having four column:
1. id | primary key | int
2. name_id | foreign key | int
3. edu_info | text
4. busin_info | text
table4 having four column:
1. id | primary key | int
2. name_id | foreign key | int
3. progress_info | text
4. inventory_info | text
依旧......
我想在django中基于forgein键在单个查询中访问所有表数据。没有必要所有表都有相同的记录。
我已经在所有模型中设置了外键。喜欢:
class table(models.Model):
name = models.ForeignKey(modelname)
答案 0 :(得分:2)
YourModel.objects.select_related().filter(foreign_record__foreign_attribute__gt=foo)
select_related被转换为INNER JOIN查询并立即加载所有数据。