0
0
Fork 0
mirror of https://github.com/boltgolt/howdy.git synced 2024-09-12 09:41:18 +02:00

Ensure Model ID is unique

The ID of the newly created model was obtained as the length of the
array of models, but if some models "in the middle" were deleted, the
new ID could be the same as the existing one.

We are sure that the last ID is the maximum, so we just take +1 than the
last element.
This commit is contained in:
Anton Golubev 2023-08-28 14:03:11 +03:00
parent 538569921e
commit ef60fa519c
No known key found for this signature in database
GPG key ID: F5397AE7206DF509

View file

@ -78,13 +78,16 @@ if not builtins.howdy_args.plain:
# Set the default label
label = "Initial model"
# some id's can be skipped, but the last id is always the maximum
next_id = encodings[-1]["id"] + 1 if encodings else 0
# Get the label from the cli arguments if provided
if builtins.howdy_args.arguments:
label = builtins.howdy_args.arguments[0]
# If models already exist, set that default label
elif encodings:
label = _("Model #") + str(len(encodings) + 1)
# Or set the default label
else:
label = _("Model #") + str(next_id)
# Keep de default name if we can't ask questions
if builtins.howdy_args.y:
@ -106,7 +109,7 @@ if "," in label:
insert_model = {
"time": int(time.time()),
"label": label,
"id": len(encodings),
"id": next_id,
"data": []
}