On Wed, Jun 21, 2023 at 08:35:36AM -0400, Mike Bayer wrote: > > > > On Wed, Jun 21, 2023, at 5:12 AM, Julien Cigar wrote: > > Hello, > > > > I'm trying to add a column_property to recursively load and merge some > > json column. > > > > I have the following: > > https://gist.github.com/silenius/1af1072abae5829f54584f1ea554e074 but I > > cannot figure how can I replace the '5011' at line 11 (which is the > > object primary key) with the "current" involved objet..? > > > > For example when I'm doing dbsession.get(MyClass, 1234) I cannot figure > > how reference the id in the column_property query > > well you wouldnt hardcode the id like that, you'd need to make your query > correlated to the parent. > > so it would select() from "ac" where "ac" is "aliased(class_)" , then > correlate to the class > > > .where( > class_.id == ac.id > ).
Thank you Mike, it _almost_ work. With (1) SQLAlchemy now generates (2). I'm still getting an error: sqlalchemy.exc.ProgrammingError: (psycopg2.errors.UndefinedTable) invalid reference to FROM-clause entry for table "content" LINE 4: WHERE content_1.id = content.id UNION ALL SELECT content.id ... ^ HINT: Perhaps you meant to reference the table alias "content_1". This is because the WITH statement appears at the "top" rather than a subselect (and cannot reference the outer table) Any idea how could I transform (1) to generate (3) rather than (2) ? (1) https://gist.github.com/silenius/43717848057d87ef7945c4d621fce5e8 (2) https://gist.github.com/silenius/34d3a319a52f8fe4fcd2b6418ca9e927 (3) https://gist.github.com/silenius/6d048f2b7819d39b70cc4d77237f9031 Thanks a lot! Julien > > > as far as how that integrates into the CTE and all that you'd have to arrange > the geometry of the SELECT to work out correctly, I would start with > something very simple and build outwards. > > correlated subquery column_property at > https://docs.sqlalchemy.org/en/20/orm/mapped_sql_expr.html#using-column-property > > -- > SQLAlchemy - > The Python SQL Toolkit and Object Relational Mapper > > http://www.sqlalchemy.org/ > > To post example code, please provide an MCVE: Minimal, Complete, and > Verifiable Example. See http://stackoverflow.com/help/mcve for a full > description. > --- > You received this message because you are subscribed to the Google Groups > "sqlalchemy" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to sqlalchemy+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/sqlalchemy/400b6b72-f601-47c8-aa30-827240097eb8%40app.fastmail.com. -- Julien Cigar Belgian Biodiversity Platform (http://www.biodiversity.be) PGP fingerprint: EEF9 F697 4B68 D275 7B11 6A25 B2BB 3710 A204 23C0 No trees were killed in the creation of this message. However, many electrons were terribly inconvenienced. -- SQLAlchemy - The Python SQL Toolkit and Object Relational Mapper http://www.sqlalchemy.org/ To post example code, please provide an MCVE: Minimal, Complete, and Verifiable Example. See http://stackoverflow.com/help/mcve for a full description. --- You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To unsubscribe from this group and stop receiving emails from it, send an email to sqlalchemy+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sqlalchemy/fdxvwszr6d6k624egxak3ctr5wcu43daz4z6o7okhikglq57to%40puqqqclybeig.
signature.asc
Description: PGP signature