Indicate an attribute that populates from a query-time SQL expression. :param default_expr: Optional SQL expression object that will be used in all cases if not assigned later with :func:`_orm.with_expression`. .. versionadded:: 1.2 .. seealso:: :ref:`orm_queryguide_w
(
default_expr: _ORMColumnExprArgument[_T] = sql.null(),
*,
repr: Union[_NoArg, bool] = _NoArg.NO_ARG, # noqa: A002
compare: Union[_NoArg, bool] = _NoArg.NO_ARG, # noqa: A002
expire_on_flush: bool = True,
info: Optional[_InfoType] = None,
doc: Optional[str] = None,
)
| 2258 | |
| 2259 | |
| 2260 | def query_expression( |
| 2261 | default_expr: _ORMColumnExprArgument[_T] = sql.null(), |
| 2262 | *, |
| 2263 | repr: Union[_NoArg, bool] = _NoArg.NO_ARG, # noqa: A002 |
| 2264 | compare: Union[_NoArg, bool] = _NoArg.NO_ARG, # noqa: A002 |
| 2265 | expire_on_flush: bool = True, |
| 2266 | info: Optional[_InfoType] = None, |
| 2267 | doc: Optional[str] = None, |
| 2268 | ) -> MappedSQLExpression[_T]: |
| 2269 | """Indicate an attribute that populates from a query-time SQL expression. |
| 2270 | |
| 2271 | :param default_expr: Optional SQL expression object that will be used in |
| 2272 | all cases if not assigned later with :func:`_orm.with_expression`. |
| 2273 | |
| 2274 | .. versionadded:: 1.2 |
| 2275 | |
| 2276 | .. seealso:: |
| 2277 | |
| 2278 | :ref:`orm_queryguide_with_expression` - background and usage examples |
| 2279 | |
| 2280 | """ |
| 2281 | prop = MappedSQLExpression( |
| 2282 | default_expr, |
| 2283 | attribute_options=_AttributeOptions( |
| 2284 | False, |
| 2285 | repr, |
| 2286 | _NoArg.NO_ARG, |
| 2287 | _NoArg.NO_ARG, |
| 2288 | compare, |
| 2289 | _NoArg.NO_ARG, |
| 2290 | _NoArg.NO_ARG, |
| 2291 | _NoArg.NO_ARG, |
| 2292 | ), |
| 2293 | expire_on_flush=expire_on_flush, |
| 2294 | info=info, |
| 2295 | doc=doc, |
| 2296 | _assume_readonly_dc_attributes=True, |
| 2297 | ) |
| 2298 | |
| 2299 | prop.strategy_key = (("query_expression", True),) |
| 2300 | return prop |
| 2301 | |
| 2302 | |
| 2303 | def clear_mappers() -> None: |