2017-04-21 9 views
0

ピーウィー:以下を考えると選択行彼らは、特定のキーワードが含まれている場合

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()できるクエリがあります。たとえば :

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

:私は「ハロー」がEntry.task_name

答えて

1

にあなたがこれをやってと等価である次

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

ような何かを試みることができる含まれているすべてのレコードを選択したいですワイルドカード( "%")は、バックエンドデータベースの内容によって異なる場合があります。

+0

実際に「含む」を使用する場合、ワイルドカードを含める必要はありません! – coleifer

+0

編集ありがとう! –

関連する問題