Peewee:选择包含特定关键字的行

时间:2017-04-21 22:18:33

标签: python peewee

鉴于以下内容:

import datetime

from peewee import *

db = SqliteDatabase("wl.db")


class Entry(Model):
    my_name = CharField(max_length=100)
    task_name = CharField(max_length=100)
    minutes = IntegerField(default=0)
    notes = CharField(max_length=200)
    created_at = DateTimeField(default=datetime.datetime.now)

    class Meta:
        database = db


def initialize():
    e = Entry(my_name="bot", task_name="hello world", minutes=12, notes="")
    e.save()
    e = Entry(my_name="bot 2", task_name="random hello random", minutes=1, notes="random")
    e.save()

if __name__ == "__main__":
    db.connect()
    db.create_tables([Entry], safe=True)
    initialize()

是否有查询我可以select()包含特定关键字的所有记录。 例如:我想选择包含" hello"的所有记录。在那里Entry.task_name

1 个答案:

答案 0 :(得分:1)

你可以尝试类似下面的内容

query = Entry.select().where(Entry.task_name.contains('hello'))

这相当于:

query = Entry.select().where(Entry.task_name ** '%hello%')

外卡("%")可能会有所不同,具体取决于后端数据库的内容。