peewee get_or_create 然后保存:错误绑定

peewee get_or_create and then save: error binding

有没有一种简单的方法可以在获取 get_or_create 时更新字段? 我有一个 class ItemCategory,我想创建一个新条目或获取已创建的条目并更新一个字段 (update_date)。 我做的是:

item,created= ItemCategory.get_or_create(cat=cat_id,item=item_id)
if created == True:
     print "created"
else:
     item.update_date = datetime.now
     item.somethingelse = 'aaa'
     item.save()

这在我的循环中工作了一段时间。但是在 50-100 get/create 之后它崩溃了:

peewee.InterfaceError: Error binding parameter 4 - probably unsupported type.

也许我应该使用 upsert(),我试过了,但没有任何效果。而且它可能不是最好的解决方案,因为它替换了整行而不是仅仅替换了一个字段。

我喜欢peewee,它使用起来非常简单快捷,但是我找不到很多完整的例子,很遗憾

新手错误

item.update_date = datetime.now()

虽然我不是 100% 确定这是唯一的答案。我修改了我的代码很多次,它可能也是别的东西。

关于我关于 create_or_update 的问题,我已经这样做了:

try:
    Item.create(...)
except IntegrityError:
    Item.update(...)

peewee 真的很棒,我想知道为什么没有人要 create_or_update。