如何在 django orm 中使用过滤器值作为变量
How to use filter value as variable in django orm
我想在额外方法中使用 tmp_id
作为 row id
的值。
代码:
order_obj = table.objects.filter()
.annotate(
tmp_id=F('table2__test_data')
)
.extra(
select={"val":"select id from data where row_id = {{here i want to use
tmp_id}} limit 1"}
)
谁能告诉我怎么做?
我找不到任何可以直接使用 temp_id 的解决方案,但有一个替代方案,我可以在下面给出的额外方法中直接指定 table2.test_data。
order_obj = table.objects.filter()
.annotate(
tmp_id=F('table2__test_data')
)
.extra(
select={"val":"select id from data where row_id = table2.test_data limit 1"}
)
我想在额外方法中使用 tmp_id
作为 row id
的值。
代码:
order_obj = table.objects.filter()
.annotate(
tmp_id=F('table2__test_data')
)
.extra(
select={"val":"select id from data where row_id = {{here i want to use
tmp_id}} limit 1"}
)
谁能告诉我怎么做?
我找不到任何可以直接使用 temp_id 的解决方案,但有一个替代方案,我可以在下面给出的额外方法中直接指定 table2.test_data。
order_obj = table.objects.filter()
.annotate(
tmp_id=F('table2__test_data')
)
.extra(
select={"val":"select id from data where row_id = table2.test_data limit 1"}
)