我有一个包含字段的事件表:
class Event(db.Model):
"""
Event Model
"""
account = db.UserProperty(required=True)
event_id = db.StringProperty(required=True)
这是删除功能:
@staticmethod
def delete(account,
event_id):
"""Delete Event by event_id
Args:
account - account
event_id - event_id
Raises:
None
"""
if account is not None and event_id is not None:
event = Event.find_by_account_and_event_id(account, event_id)
# if a valid event
if event is not None:
logging.info('DELETING event with event_id = ' + event.event_id + ' account= ' + str(event.account))
event.delete()
我看到以下错误:
2016-06-15 15:45:45.180 DELETING event with event_id = 2a5e5422-dec5-4e87-a462-e2551e3f3cf8 account= test.user
E 2016-06-15 15:45:45.186 delete() takes exactly 2 arguments (0 given)
仅供参考:这是来自app.yaml:
version: 1
runtime: python27
threadsafe: true
api_version: 1
我不确定这里有什么问题。有什么想法吗?
答案 0 :(得分:1)
我很确定你覆盖了删除方法,因为从db中删除没有任何参数。可能无法覆盖,但您没有在db.Model类中调用delete
In [51]: class X(db.Model):
pass
In [52]: x = X()
In [53]: x.put()
Out[53]: datastore_types.Key.from_path(u'X', 6052396701319168L, _app=u's~<removed>')
In [54]: x.delete()