Maybe you could override the save method in a New User Model Form: save_model(self, request, obj, form, change)
So you can: admin.site.unregister(User) admin.site.register(User, NewModelForm) http://docs.djangoproject.com/en/dev/ref/contrib/admin/ I hope this could help you! And finally the other way i usually use is extend a new Client Model from User, so i have a plenty access to the User Model and also from the request i get it through request.user.client and i override the save method for it. Regards, Sergio Hinojosa On Nov 27, 12:59 pm, bruno desthuilliers <[EMAIL PROTECTED]> wrote: > On 27 nov, 17:11, Paddy Joy <[EMAIL PROTECTED]> wrote: > > > Thanks for the tips, signals would work except I need access to the > > raw password when users are created. > > > On further inspection it seems I would need to override the > > UserManager, > > On even further inspection, you may in fact want to override > User.set_password !-) > > > I know I can extend it with more methods but I don't > > think I can override it. > > As Alex said, you can always - I mean, as a _last_ resort - > monkeypatch it: > > # mymodel.py > from auth.models import UserManager > _create_user = UserManager.create_user > def my_create_user(self, username, email, password=None): > # do whatever here > # and eventually remember to call the original method > return _create_user(self, username, email, password) > > UserManager.create_user = my_create_user > > # et voilà. > > > Paddy > > > On Nov 27, 12:39 am, sergioh <[EMAIL PROTECTED]> wrote: > > > > Signals are the better way to achieve. You usually override the save > > > method when you need to define something related with the model > > > itself, but in many cases signals are the better way to notify some > > > function to do something if a model change (after save) > > > > def your_function(sender, instance, created=False, **kwargs): > > > # your tasks > > > > models.signals.post_save.connect(your_function, sender=User) #this > > > relate your User model with the signal > > > > regards, > > > > Sergio Hinojosa > > > > On Nov 26, 7:01 am, "Alex Koshelev" <[EMAIL PROTECTED]> wrote: > > > > > Of course you can monkey-patch the User model but the better way is to > > > > use > > > > signals pre_ or post_save > > > > > On Wed, Nov 26, 2008 at 13:54, Paddy Joy <[EMAIL PROTECTED]> wrote: > > > > > > I would like to override the save() method on the contrib.auth User > > > > > model so that I can run a routine when a user is created/modified. > > > > > > Is this possible or do I need to use a signal? I have tried overriding > > > > > the User model like this but it never seems to call my code: > > > > > > from django.contrib.auth.models import User > > > > > > # Override User model > > > > > class User(models.Model): > > > > > > def save(self): > > > > > > # Do something here > > > > > myroutine() > > > > > super(User, self).save() > > > > > > Can anyone help? > > > > > > Paddy --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-users@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/django-users?hl=en -~----------~----~----~----~------~----~------~--~---