mirror of
https://github.com/samuelclay/NewsBlur.git
synced 2025-08-31 21:41:33 +00:00
Fixing issue where dupe classifiers cause new classifiers to not be saved.
This commit is contained in:
parent
54c60c1a23
commit
0476f7b83c
1 changed files with 14 additions and 0 deletions
|
@ -93,6 +93,20 @@ def save_classifier(request):
|
||||||
classifier = ClassifierCls.objects.get(**classifier_dict)
|
classifier = ClassifierCls.objects.get(**classifier_dict)
|
||||||
except ClassifierCls.DoesNotExist:
|
except ClassifierCls.DoesNotExist:
|
||||||
classifier = None
|
classifier = None
|
||||||
|
except ClassifierCls.MultipleObjectsReturned:
|
||||||
|
classifiers = ClassifierCls.objects.filter(**classifier_dict)
|
||||||
|
for classifier in classifiers:
|
||||||
|
# Update the score of the first classifier, delete the others, but don't delete more than 1
|
||||||
|
first_classifier = classifiers[0]
|
||||||
|
first_classifier.score = score
|
||||||
|
first_classifier.save()
|
||||||
|
for classifier in classifiers[1:]:
|
||||||
|
classifier.delete()
|
||||||
|
break
|
||||||
|
logging.info(
|
||||||
|
f"Updated classifier {first_classifier.id} and deleted one duplicate."
|
||||||
|
)
|
||||||
|
continue
|
||||||
if not classifier:
|
if not classifier:
|
||||||
try:
|
try:
|
||||||
classifier_dict.update(dict(score=score))
|
classifier_dict.update(dict(score=score))
|
||||||
|
|
Loading…
Add table
Reference in a new issue