Out of interest, why would you not write: print( session.query(Jobmst.jobmst_type, Jobmst.jobmst_name) .first() )
The call to with_entities seems unnecessary. Simon On Fri, Feb 9, 2018 at 12:27 PM, Jeremy Flowers <jeremy.g.flow...@gmail.com> wrote: > And that can be simplified to: > print(session.query() > .with_entities(Jobmst.jobmst_type, Jobmst.jobmst_name) > .first() > ) > > On Friday, 9 February 2018 12:21:37 UTC, Jeremy Flowers wrote: >> >> Hi Simon. >> Instead of using values(), I did this. >> print(session.query(Jobmst) >> .with_entities(Jobmst.jobmst_type, Jobmst.jobmst_name) >> .first() >> ) >> >> and that worked a treat too. >> Thanks. >> >> >> On Friday, 9 February 2018 11:58:18 UTC, Simon King wrote: >>> >>> The chaining-friendly method you are looking for is probably >>> with_entities(): >>> >>> >>> http://docs.sqlalchemy.org/en/latest/orm/query.html#sqlalchemy.orm.query.Query.with_entities >>> >>> Simon >>> >>> On Fri, Feb 9, 2018 at 11:52 AM, Jeremy Flowers >>> <jeremy.g...@gmail.com> wrote: >>> > From watching your videos I always thought some sort of query object >>> > would >>> > be returned from the query() operation, so method chaining (aka fluent >>> > interface) could always be performed.. in a way that is analogous to >>> > JQuery. >>> > But what I'm doing seems to be breaking that paradigm. What am I doing >>> > wrong >>> > or not getting? >>> > >>> > On Thursday, 8 February 2018 20:29:45 UTC, Jeremy Flowers wrote: >>> >> >>> >> I've seen you can do things like this: >>> >> fields = ['jobmst_type', 'jobmst_name'] >>> >> print(session.query(Jobmst).options(load_only(*fields)).first()) >>> >> >>> >> But according to the documentation, you should be able to do something >>> >> with Query values() too. >>> >> But once again I seem to be dumbfounded by the syntatic sugar. >>> >> >>> >> What data type does the list of values need? >>> >> Is there a way to introspect that ahead of time? >>> >> >>> >> Thought I was onto something with .base_columns, but that didn't work >>> >> either... >>> >> >>> >> I ended up with something like an instrumentalAttributes mismatch. >>> >> print(session.query(Jobmst) >>> >> .values([Jobmst.jobmst_type.base_columns, >>> >> Jobmst.jobmst_name.base_columns >>> >> ]) >>> >> .first() >>> >> ) >>> >> >>> >> sqlalchemy.exc.InvalidRequestError: SQL expression, column, or mapped >>> >> entity expected - got '[{Column('jobmst_type', Numeric(scale=0, >>> >> asdecimal=False), table=<jobmst>, nullable=False)}, >>> >> {Column('jobmst_name', >>> >> String(length=256), table=<jobmst>, nullable=False)}]' >>> >> >>> >> BTW: I'm aware of querying with things like query(Jobmst.jobmst_type, >>> >> Jobmst.jobmst_name) too - but looking to understand what values >>> >> expects. >>> >> Mike, Can documentation not specify type? >>> > >>> > -- >>> > 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+...@googlegroups.com. >>> > To post to this group, send email to sqlal...@googlegroups.com. >>> > Visit this group at https://groups.google.com/group/sqlalchemy. >>> > For more options, visit https://groups.google.com/d/optout. > > -- > 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 post to this group, send email to sqlalchemy@googlegroups.com. > Visit this group at https://groups.google.com/group/sqlalchemy. > For more options, visit https://groups.google.com/d/optout. -- 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 post to this group, send email to sqlalchemy@googlegroups.com. Visit this group at https://groups.google.com/group/sqlalchemy. For more options, visit https://groups.google.com/d/optout.