get_or_create()只需1个参数(给定2个)

Mic*_*per 4 python django django-models

上次我检查过,(h)一个论点:

for entry in f['entries']:
    h = {'feed':self, 'link': entry['link'],'title':entry['title'],
         'summary':entry['summary'],
         'updated_at':datetime.fromtimestamp(mktime(entry['updated_parsed']))}

    en = Entry.objects.get_or_create(h)
Run Code Online (Sandbox Code Playgroud)

此代码失败,标题中出现错误.我可以检查什么?

int*_*jay 14

get_or_create仅接受关键字参数.如果参数在dict中,您可以使用以下命令调用它:

en = Entry.objects.get_or_create(**h)
Run Code Online (Sandbox Code Playgroud)

或者您可以直接放置关键字参数:

en = Entry.objects.get_or_create(name=value, ....)
Run Code Online (Sandbox Code Playgroud)

错误消息告诉您提供了两个参数的原因是self传递给函数的隐式参数.