Closed jessemcl-flwls closed 1 month ago
Thank you for addressing this issue so quickly: https://github.com/piccolo-orm/piccolo/issues/1101
Sadly, this rabbit hole might go a bit deeper. With the above fix, I immediately ran into the next possibly related thing:
Again, if I have two tables with a foreign key relationship between them, and I specify the relationship using a custom db_column_name, eg:
class FooTable(Table, tablename="foo", schema="public"): id = Varchar(length=20, primary_key=True, null=False) name = Varchar(length=64, unique=True, null=False) class BarTable(Table, tablename="bar", schema="public"): id = Varchar(length=20, primary_key=True, null=False) foo = ForeignKey(references=FooTable, null=False, db_column_name="foo_id")
Then when I try to query this relationship using prefetch:
bar = await BarTable.objects(BarTable.foo).where(BarTable.foo.id == "abc").first()
Then I get an error saying there is no matching column found.
If I leave out the prefetch, then it works without error, with the resulting dict containing the property:
"foo": "abc"
hmmm, not sure how i raised this twice, apologies
Thank you for addressing this issue so quickly: https://github.com/piccolo-orm/piccolo/issues/1101
Sadly, this rabbit hole might go a bit deeper. With the above fix, I immediately ran into the next possibly related thing:
Again, if I have two tables with a foreign key relationship between them, and I specify the relationship using a custom db_column_name, eg:
Then when I try to query this relationship using prefetch:
Then I get an error saying there is no matching column found.
If I leave out the prefetch, then it works without error, with the resulting dict containing the property: