@@ -28,11 +28,30 @@ def on_load(self):
28
28
29
29
30
30
class MyRegisterState (reflex_local_auth .RegistrationState ):
31
- # This event handler must be named something besides `handle_registration`!!!
31
+ def handle_registration (
32
+ self , form_data
33
+ ) -> rx .event .EventSpec | list [rx .event .EventSpec ]:
34
+ """Handle registration form on_submit.
35
+
36
+ Set error_message appropriately based on validation results.
37
+
38
+ Args:
39
+ form_data: A dict of form fields and values.
40
+ """
41
+ username = form_data ["username" ]
42
+ password = form_data ["password" ]
43
+ validation_errors = self ._validate_fields (
44
+ username , password , form_data ["confirm_password" ]
45
+ )
46
+ if validation_errors :
47
+ self .new_user_id = - 1
48
+ return validation_errors
49
+ self ._register_user (username , password )
50
+ return self .new_user_id
51
+
32
52
def handle_registration_email (self , form_data ):
33
- registration_result = super ().handle_registration (form_data )
34
- print (self .new_user_id )
35
- if self .new_user_id >= 0 :
53
+ new_user_id = self .handle_registration (form_data )
54
+ if new_user_id >= 0 :
36
55
with rx .session () as session :
37
56
session .add (
38
57
UserInfo (
@@ -41,4 +60,4 @@ def handle_registration_email(self, form_data):
41
60
)
42
61
)
43
62
session .commit ()
44
- return registration_result
63
+ return type ( self ). successful_registration
0 commit comments