Built-in signals are sent by Django, so you can’t control their kwargs.
You can:
- Define and send your own signals.
-
Store additional info in model instance. Like this
def save(self, commit=True): user = super(CustomFormThing, self).save(commit=False) #set some other attrs on user here ... user._some="some" user._other="other" if commit: user.save() return user @receiver(post_save, sender=User) def create_profile(sender, instance, created, **kwargs): some_id = getattr(instance, '_some', None) other_id = getattr(instance, '_other', None) if created: #do something with the kwargs above...