Foros del Web » Programando para Internet » Python »

[SOLUCIONADO] Enviar e-mail a miembros del o los grupos al que pertenece

Estas en el tema de Enviar e-mail a miembros del o los grupos al que pertenece en el foro de Python en Foros del Web. Hola soy nuevo en esto y estoy necesitando hacer el envío de e-mail a todos los miembros del grupo al que pertenece el usuario activo, ...
  #1 (permalink)  
Antiguo 08/01/2014, 12:55
 
Fecha de Ingreso: abril-2013
Mensajes: 10
Antigüedad: 11 años
Puntos: 0
Pregunta Enviar e-mail a miembros del o los grupos al que pertenece

Hola soy nuevo en esto y estoy necesitando hacer el envío de e-mail a todos los miembros del grupo al que pertenece el usuario activo, mi codigo es algo asi:


...


titulo = 'Mensaje glass'
contenido = 'Generaron una solicitud en el grupo'
from_email = '[email protected]'
correo = EmailMessage(titulo, contenido, from_email ,to =[?????????
emails de usuarios del grupo ])
correo.send()
...

Tengo diferentes grupos, administradores, operadores, clientes, etc. (el usuario puede pertenecer a uno o varios grupos) y no se como recuperar todos los e-mails de los miembros de los grupos al que pertenese ese usuario. Desde ya muchas gracias por su colaboración.
  #2 (permalink)  
Antiguo 08/01/2014, 13:37
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: Enviar e-mail a miembros del o los grupos al que pertenece

Los grupos son una relación muchos a muchos. Tienes que hacer 2 cosas:

1. Determinar el grupo o grupos.
2. Sacar todos los usuarios de ese grupo o grupos.

Así sacas los grupos de un usuario
Código Python:
Ver original
  1. groups = user.groups.all()

Ya que obtengas un grupo puedes sacar los usuarios de ese grupo
Código Python:
Ver original
  1. users = group.user_set.all()

Si quieres obtener varios usuarios de manera única de varios grupos tienes que hacer otro queryset dependiendo de lo quieras hacer.
  #3 (permalink)  
Antiguo 09/01/2014, 07:22
 
Fecha de Ingreso: abril-2013
Mensajes: 10
Antigüedad: 11 años
Puntos: 0
Respuesta: Enviar e-mail a miembros del o los grupos al que pertenece

Lo solucione así, no se si es correcta la manera:

Código Python:
Ver original
  1. usergrup = request.user.groups.all()
  2. list_mail = User.objects.filter(groups__in= usergrup).values_list('email', flat=True).annotate()
  #4 (permalink)  
Antiguo 09/01/2014, 12:46
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: Enviar e-mail a miembros del o los grupos al que pertenece

Eso depende de ti, si el usuario esta en varios grupos y quieres que sea un solo grupo especifico entonces supongo que no esta bien. Pero si querías todos los usuarios de todos los grupos a los que pertenece ese usuario entonces esta bien.

Etiquetas: django
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:49.