bgneal@44
|
1 """
|
bgneal@44
|
2 Signal handler(s) for the bio application.
|
bgneal@44
|
3 """
|
bgneal@44
|
4 from django.db.models.signals import post_save
|
bgneal@44
|
5 from django.contrib.auth.models import User
|
bgneal@44
|
6 from bio.models import UserProfile
|
bgneal@44
|
7
|
bgneal@44
|
8 def on_user_save(sender, **kwargs):
|
bgneal@44
|
9 """
|
bgneal@44
|
10 This signal handler ensures that every User has a corresonding
|
bgneal@44
|
11 UserProfile. It is called after User instance is saved. It creates
|
bgneal@44
|
12 a UserProfile for the User if the created argument is True.
|
bgneal@44
|
13 """
|
bgneal@44
|
14 created = kwargs['created']
|
bgneal@44
|
15 if created:
|
bgneal@44
|
16 user = kwargs['instance']
|
bgneal@44
|
17 profile = UserProfile()
|
bgneal@44
|
18 profile.user = user
|
bgneal@44
|
19 profile.save()
|
bgneal@44
|
20
|
bgneal@44
|
21
|
bgneal@44
|
22 post_save.connect(on_user_save, sender=User)
|