[Python] Django ORM like select query in Pony ORM

Discussão em 'Python' iniciado por Stack, Fevereiro 2, 2025.

  1. Stack

    Stack Membro Participativo

    I'm now to Pony ORM and I have created my DB models like this:

    class RSSSource(db.Entity):
    title = Required(str, max_len=100)
    link = Required(str, max_len=800)
    key = Required(str, max_len=200)
    description = Required(str, max_len=800)
    is_deleted = Optional(bool, sql_default=False)
    rss_content = Set('RSS', reverse='source')
    subscriptions = Set("Subscription", reverse='source')

    def __str__(self):
    return self.title

    class RSS(db.Entity):
    title = Optional(str, max_len=300)
    link = Optional(str, max_len=500)
    description = Required(str, max_len=500)
    source = Optional("RSSSource", reverse="rss_content")
    pub_date = Optional(datetime)
    is_deleted = Optional(datetime, sql_default=False)
    likes = Set("Like", reverse="rss")

    def __str__(self):
    return self.title

    class User(db.Entity):
    first_name = Optional(str, max_len=100)
    last_name = Optional(str, max_len=100)
    username = Required(str, max_len=200, unique=True)
    password = Required(str, max_len=500)
    is_deleted = Optional(bool, sql_default=False)
    subscriptions = Set("Subscription", reverse="user")
    likes = Set("Like", reverse="user")

    def __str__(self):
    return self.username

    class Subscription(db.Entity):
    source = Optional("RSSSource", reverse="subscriptions")
    user = Optional("User", reverse="subscriptions")
    is_deleted = Optional(bool, sql_default=False)



    now I want to perform a Django ORM-like select query. something like this:

    select user.id
    from Subscription where source.key = $key and (is_deleted is null or is_deleted = FALSE)


    I couldn't find a way to do this. can anyone help, please?

    Continue reading...

Compartilhe esta Página