@receiver(post_migrate)
def post_post_migrate(sender=None, verbosity=0, **kwargs):
# check one of your installed apps to ensure that the script runs only once
# this is important because post_migrate is fired for all apps even when migrating a specific app
    if sender.name != 'myapps.administration':
        return

    # Put your code here.
    group_perms = {
        u'staff': {
            'apps': (u'fees', )
        },
        u'users': {
            'apps': ('tpes',)
        },
        u'admin': {
            'apps': ('administration',)
       
    }
    for group_name in group_perms.keys():
        print 'adding permissions for {0}'.format(group_name)
        group = Group.objects.get(name=group_name)
        for app_label in group_perms[group_name]['apps']:
            for content_type in ContentType.objects.filter(app_label=app_label):
                for perm in Permission.objects.filter(content_type=content_type):
                    group.permissions.add(perm)
        group.save()