diff options
Diffstat (limited to 'apps/patchwork/models.py')
-rw-r--r-- | apps/patchwork/models.py | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/apps/patchwork/models.py b/apps/patchwork/models.py index 22062c2..bb8d8e7 100644 --- a/apps/patchwork/models.py +++ b/apps/patchwork/models.py @@ -136,13 +136,14 @@ class UserProfile(models.Model): def __unicode__(self): return self.name() -def _user_created_callback(sender, created, instance, **kwargs): - if not created: - return - profile = UserProfile(user = instance) +def _user_saved_callback(sender, created, instance, **kwargs): + try: + profile = instance.get_profile() + except UserProfile.DoesNotExist: + profile = UserProfile(user = instance) profile.save() -models.signals.post_save.connect(_user_created_callback, sender = User) +models.signals.post_save.connect(_user_saved_callback, sender = User) class State(models.Model): name = models.CharField(max_length = 100) |