sqlalchemy - Query a PostgreSQL view created by SQLAcodegen -
i have useful postgresql view, generated join query:
\d very_useful_view; view "public.very_useful_view" column | type | modifiers -------------+-------------+----------- tree_id | dom_treeid | title | text | grass_id | dom_grass | name | text | street_uuid | uuid | the view modeled sqlacodegen following object:
t_very_useful_view = table( 'very_useful_view', metadata, column('tree_id', string), column('title', text), column('grass_id', text), column('name', text), column('street_uuid', uuid) ) normal query works expected:
print session.query(t_very_useful_view).all() however, filtering -
print session.query(t_very_useful_view).\ filter(t_very_useful_view.tree_id == some_tree_id).\ all() raises:
attributeerror: 'table' object has no attribute 'tree_id' any idea missing view mapping?
the columns of table object should accessed columns property:
print session.query(t_very_useful_view).\ filter(t_very_useful_view.columns.tree_id == some_tree_id).\ all() this contrasts subclasses of declarative_base(), expose columns root-level object properties.
Comments
Post a Comment