Django - get objects from a many to many field

I have a m2m field called "admins" inside a model and I need to obtain from a view all the selected entries in that field, which are user IDs. Then with the user IDs obtain the emails for every user. Is it possible?

The exact thing I want to do is to send a mass meial to all the admins of a space inside this platform.

Spaces model:

class Space(models.Model):

    Spaces model. This model stores a "space" or "place" also known as a
    participative process in reality. Every place has a minimum set of
    settings for customization.

    There are three main permission roles in every space: administrator
    (admins), moderators (mods) and regular users (users).
    name = models.CharField(_('Name'), max_length=250, unique=True,
        help_text=_('Max: 250 characters'))
    url = models.CharField(_('URL'), max_length=100, unique=True,
        message='Invalid characters in the space URL.')],
        help_text=_('Valid characters are lowercase, digits and \
    admins = models.ManyToManyField(User, related_name="space_admins", verbose_name=_('Administrators'), help_text=_('Please select the \
        users that will be administrators of this space'), blank=True,
    mods = models.ManyToManyField(User, related_name="space_mods",
        verbose_name=_('Moderators'), help_text=_('Please select the users \
        that will be moderators of this space.'), blank=True, null=True)
    users = models.ManyToManyField(User, related_name="space_users", verbose_name=_('Users'), help_text=_('Please select the users that \
        can participate on this space'), blank=True, null=True)

View for sending just one email:

def add_intent(request, space_url):

    Returns a page where the logged in user can click on a "I want to
    participate" button, which after sends an email to the administrator of
    the space with a link to approve the user to use the space.

    :attributes:  space, intent, token
    :rtype: Multiple entity objects.
    :context: space_url, heading
    space = get_object_or_404(Space, url=space_url)
    #admins = space.admins??

        intent = Intent.objects.get(user=request.user, space=space)
        heading = _("Access has been already authorized")

    except Intent.DoesNotExist:
        token = hashlib.md5("%s%s%s" % (request.user, space,
        intent = Intent(user=request.user, space=space, token=token)
        subject = _("New participation request")
        body = _("User {0} wants to participate in space {1}.\n \
                 Please click on the link below to approve.\n {2}"\
        heading = _("Your request is being processed.")
        send_mail(subject=subject, message=body,

        # Send a notification to all the admins in that space

    return render_to_response('space_intent.html', \
            {'space_name':, 'heading': heading}, \


you can:

space.related.all() to return a QuerySet of User

For Django >= 1.9


*As mentioned by Salvatore Iovene

Need Your Help

Eclipse Mars: ANT Task references missing SWT library

java eclipse ant

I just upgraded to Eclipse Mars and suddenly my ANT task working fine with Lunar complains:

Send a base64 image in HTML email

email base64 html-email data-uri

Using a rich-text editor, our users can drag and drop a saved image from their desktop to the editor. The image appears and displays properly in the web page after they submit.