diff --git a/tildes/tildes/models/user/user.py b/tildes/tildes/models/user/user.py index f2ee7e8..b797feb 100644 --- a/tildes/tildes/models/user/user.py +++ b/tildes/tildes/models/user/user.py @@ -116,14 +116,16 @@ class User(DatabaseModel): ) comment_label_weight: Optional[float] = Column(REAL) last_exemplary_label_time: Optional[datetime] = Column(TIMESTAMP(timezone=True)) - _bio_markdown: str = Column( - "bio_markdown", - Text, - CheckConstraint( - f"LENGTH(bio_markdown) <= {BIO_MAX_LENGTH}", name="bio_markdown_length" - ), + _bio_markdown: str = deferred( + Column( + "bio_markdown", + Text, + CheckConstraint( + f"LENGTH(bio_markdown) <= {BIO_MAX_LENGTH}", name="bio_markdown_length" + ), + ) ) - bio_rendered_html: str = Column(Text) + bio_rendered_html: str = deferred(Column(Text)) @hybrid_property def filtered_topic_tags(self) -> List[str]: diff --git a/tildes/tildes/resources/__init__.py b/tildes/tildes/resources/__init__.py index d8472a1..aae040e 100644 --- a/tildes/tildes/resources/__init__.py +++ b/tildes/tildes/resources/__init__.py @@ -11,10 +11,12 @@ from tildes.models import DatabaseModel, ModelQuery def get_resource(request: Request, base_query: ModelQuery) -> DatabaseModel: """Prepare and execute base query from a root factory, returning result.""" - query = base_query.lock_based_on_request_method().join_all_relationships() - - if not request.is_safe_method: - query = query.undefer_all_columns() + # pylint: disable=unused-argument + query = ( + base_query.lock_based_on_request_method() + .join_all_relationships() + .undefer_all_columns() + ) resource = query.one_or_none()