PostReadPyHook example


#1

Hallo!

Gibt es ein Beispiel für die Verwendung des “Post-Read” Hooks?
Ich finde leider weder ein Beispiel noch ein etwas dazu in der Dokumentation.
Bei Laden kommt aber “Searching for hooks of type ‘PostReadPyHook’ in: /usr/share/ucs-school-import/pyhooks…”, also sucht er einen solchen Hook wohl…

Hintergrund:
Ich möchte nach vor dem Hinzufügen eines Benutzers dem Benutzer ein Passwort mit einer eigenen Methode generieren.
Wenn ich dies in “UserPyHook -> pre_create” versuche, dann ist es bereits zu spät, da ich nicht mehr erkennen kann, ob in den Daten ein Passwort gesetzt war oder nicht. Zu diesem Zeitpunkt hat er bereits immer ein Passwort gesetzt (gegeben oder generiert).
Möchte gerne auf irgendwelche unsauberen Tricks verzichten…


#2

Hallo!
Gibt es hier wirklich keine Dokumentation oder ein Beispiel?
Gruß
Sven


#3

Hallo Sven,

hier ist ein Beispiel, das bei Kunden im Einsatz ist.

post_process_input_data.py (3.5 KB)

Im Beispiel wird .-_ von Anfang und Ende von Klassennamen entfernt.
Bei dir müsste es wohl so was in der Art sein:

def my_password_func(csv_pw):
	if csv_pw:
		return csv_pw
	else:
		return 's3cr3t'

class PostProcessInputDataHook(PostReadPyHook):
	property_to_modify_func = {
		'password': my_password_func,
	}

	def __init__(self, *args, **kwargs):
		...

Grüße
Daniel