fix(query): ensure atleast name is always selected

Otherwise we got an empty query if we tried to only query a child table

Signed-off-by: Akhil Narang <me@akhilnarang.dev>
This commit is contained in:
Akhil Narang 2026-03-10 14:23:19 +05:30
parent a084bad5d5
commit 72007f636d
No known key found for this signature in database
GPG key ID: 9DCC61E211BF645F

View file

@ -357,13 +357,19 @@ class Engine:
self.fields = [self.table.name]
self.query._child_queries = []
has_select_field = False
for field in self.fields:
if isinstance(field, DynamicTableField):
self.query = field.apply_select(self.query, engine=self)
has_select_field = True
elif isinstance(field, ChildQuery):
self.query._child_queries.append(field)
else:
self.query = self.query.select(field)
has_select_field = True
if not has_select_field:
self.query = self.query.select(self.table.name)
def apply_filters(
self,