2017-08-03 144 views
0

我喜歡比較DateTimeField與peewee.datetime.datetime.now或今天,但無法設法做到這一點。代碼片段如下所示。如何比較python代碼中的peewee日期

class subinfo(peewee.Model): 
    sub_id = peewee.IntegerField() 
    active = peewee.BooleanField() 
    sub_type = peewee.IntegerField() 
    sub_cat = peewee.TextField() 

    class Meta: 
     database = locdb 

class subscriber(peewee.Model): 
    sub_id = peewee.IntegerField(unique=True, primary_key=True) 
    sub_start = peewee.DateTimeField() 
    sub_end = peewee.DateTimeField() 
    ref_id = peewee.BigIntegerField() 

    class Meta: 
     database = locdb 

for row in subscriber.select(): 
    if(row.sub_start >= peewee.datetime.datetime.now): 
     sub1, created = subinfo.get_or_create(sub_id=row.sub_id, active=True) 
     if(created == False & sub1.active == False): 
      q = subinfo.update(active=True).where(sub_id=row.sub_id) 
      q.execute() 
    else: 
     subinfo.get_or_create(sub_id=row.sub_id, active=False) 

,但我一直打以下錯誤

File "subsync.py", line 51, in <module> 
if(row.sub_start >= peewee.datetime.datetime.now): 
TypeError: '>=' not supported between instances of 'datetime.datetime' and 'builtin_function_or_method' 
+0

嘗試替換> =以及其親屬 – Mandy8055

+0

>命中相同的錯誤 – CPMM

回答

1

的add()到現在 使用peewee.datetime.datetime.now()