[英]Django-taggit inserting
我的模型定義了一個像
keywords = TaggableManager(_('Keywords'), blank=True)
從視圖中,我需要在for中使用get_or_create
***
with transaction.commit_on_success():
# Inserting obj_parsed
defaults = {
'owner': user,
'title': obj.title,
'abstract': obj.abstract,
#'keywords': [kw for kw in obj.keywords],
'url': obj.url,
}
obj_instance, created = Obj.objects.get_or_create(
title=obj.title, defaults=defaults)
if not created:
result['error'] = _('URL already in the repository')
return result
obj.keywords是一個列表(可以為空),但是get_or_create給我錯誤“ TypeError:'keywords'是該函數的無效關鍵字參數”
我該如何解決?
我不想做
mymodel = Obj(**defaults)
mymodel.save()
mymodel.keywords.add([kw for kw in obj.keywords])
謝謝!
我只是有一個類似的問題,並研究了taggit測試 。 我唯一要做的就是在創建后添加標簽,如下所示:
defaults = {
'owner': user,
'title': obj.title,
'abstract': obj.abstract,
'url': obj.url,
}
obj_instance, created = Obj.objects.get_or_create(title=obj.title, defaults=defaults)
obj_instance.add(*obj.keywords)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.