data_sources: implicitly support users' uuid as valid id value (#83752) #852
Loading…
Reference in New Issue
No description provided.
Delete Branch "wip/83752-users-data-sources-accept-uuid-as-identifier-value"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
4a8ede9d42
tob3ca1a2383
b3ca1a2383
to3be9937341
@ -1,6 +1,6 @@
[tox]
toxworkdir = {env:TMPDIR:/tmp}/tox-{env:USER}/wcs/{env:BRANCH_NAME:main}/{env:EXECUTOR_NUMBER:}
envlist = py3-django32-codestyle-coverage, pylint
envlist = py3-django32{,-codestyle-coverage}, pylint
Sans doute pas de rapport.
Yes, une modif locale versionnée par mégarde, c’est retiré.
@ -1106,3 +1109,4 @@
if str(item['id']) == str(option_id):
value = item
break
elif users_source and (uuid := item.get('uuid')) and uuid == option_id:
J'aurais plutôt donné son propre
elif self.type == 'wcs.users'
ici, qui serait directement allé chercher la bonne ligne dans la db,C’est déjà précisément ce que fait, dans le cas
self.type == 'wcs:users'
, get_structured_items qu’on appelle ici, non ?pas compris ce que ça apporterait de doublonner/déplacer le code directement dans get_structured_value :/
Actuellement le code fait la récupération de tous les utilisateurs (filtrés) pour dedans chercher celui avec le bon id/uuid; dans ma proposition j'introduis "get_user_with_roles(option_id, ...)" (user au singulier, paramètre option_id) qui passerait dans la requête SQL également l'id/uuid recherché, pour obtenir un seul résultat.
Ok, mes excuses, je pensais qu’il s’agissait d’une référence à une fonction existante (en l’occurrence
get_users_with_roles
avec les rôles inclus et exclus) à laquelle il aurait fallu recourir ici. Quiproquo.Je revois ma copie.
3be9937341
to3634237de2
3634237de2
to6ef563c333
6ef563c333
to8b06f3cf05
WIP: data_sources: implicitly support users' uuid as valid id value (#83752)to data_sources: implicitly support users' uuid as valid id value (#83752)(cf commentaire)
data_sources: implicitly support users' uuid as valid id value (#83752)to WIP: data_sources: implicitly support users' uuid as valid id value (#83752)8b06f3cf05
to429e5eda88
76b2e812db
toe1da5c80dc
e1da5c80dc
toa4216cd50a
a4216cd50a
to681227c945
681227c945
to2f179bf547
2f179bf547
tob9c67015e9
WIP: data_sources: implicitly support users' uuid as valid id value (#83752)to data_sources: implicitly support users' uuid as valid id value (#83752)b9c67015e9
to7a51fd97f7
7a51fd97f7
tob90ec28003
Deux petites modifications et ça sera ok.
@ -62,6 +62,14 @@ def register_data_source_function(function, function_name=None):
data_source_functions[function_name] = function
def get_dict(user):
Je pense que ça serait mieux de la renommer,
get_data_source_entry_from_user
par exemple.@ -192,0 +200,4 @@
else:
# what are the odds of a user name id being also a synctatically valid integer?
# let's include name ids here too:
criterias = [Or([Equal('id', int(user_id)), Intersects('name_identifiers', [user_id])])]
Si jamais on se trouvait sur un entier, avec les nameid générés par authentic, il serait > 2**31 et ça ne passerait pas pour postgresql, je serais plutôt pour quelque chose de ce genre :
b90ec28003
tof070166521
f070166521
to69e2dfc59a
Merci, c’est modifié.
J'ai relancé un build parce qu'erreur intermittente, mais à la fin d'un build victorieux, ça sera bon.
Oui en effet erreur intermittente d’un truc qui n’a rien à voir, je n’avais pas vu que le dernier build était concerné. Merci.
edda394eed
toc3224721c4