Create a SqlAlchemy Query Builder #21

Closed
opened 2023-03-27 20:27:47 +00:00 by Valbou · 0 comments
Valbou commented 2023-03-27 20:27:47 +00:00 (Migrated from github.com)

Create a query builder like Django QuerySet.
It give reusable query and inheritance capabilities.

base = TagQueryset()
base.select().owner(user_id).done(True)
class Queryset:
    def __init__(self, qs_class):
        self.query = select(qs_class)

    def owner(self, user_id) -> Self:
        self.query = self.query.where(qs_class.user_id == user_id)
        return self

class TagQueryset:
    def __init__(self):
        self.query = select(Tag)
Create a query builder like Django QuerySet. It give reusable query and inheritance capabilities. ``` base = TagQueryset() base.select().owner(user_id).done(True) ``` ``` class Queryset: def __init__(self, qs_class): self.query = select(qs_class) def owner(self, user_id) -> Self: self.query = self.query.where(qs_class.user_id == user_id) return self class TagQueryset: def __init__(self): self.query = select(Tag) ```
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Valentin/vtaskr-backend#21
No description provided.