Obtener alumnos en 1.7

Obtener alumnos en 1.7

de Jorge Aranda García -
Número de respuestas: 7
Estoy intentando obtener los alumnos de un curso en Moodle 1.7.

He visto que hay un tabla que se llama role_assignments y en ella están los usuarios del curso. Haciendo una consulta con la id del Rol Student puedo sacar los alumnos pero para filtar por curso solo veo un campo que se llama context.Pero este campo no se como obtenerlo.

Sabéis como lograrlo o si existe una función como get_student?

Gracias
Promedio de valoraciones: -
En respuesta a Jorge Aranda García

Re: Obtener alumnos en 1.7

de fco javier gonzalez ortiz -
Jorge, a ver si te sirve esto:

Cuando accedes a las calificaciones de los alumnos, puedes descargarlas en formato hoja de cálculo. En esa hoja de cálculo, estan los datos de los alumnos , inclusa hay una columna con todos los e-mails.

Un saludo
En respuesta a fco javier gonzalez ortiz

Re: Obtener alumnos en 1.7

de Jorge Aranda García -
Hola Francisco Javier,
gracias por contestar.

Mi problema exactamente es que estoy programando un nuevo bloque de calificaciones y no se como obtener el listado de alumnos en la Moodle 1.7. Ya que en esta hay que buscar partiendo de los roles.

He estado mirando las calificaciones actuales de moodle pero no encuentro como lo obtiene.

Gracias
En respuesta a Jorge Aranda García

Re: Obtener alumnos en 1.7

de alberto Agrela -

Hola Jorge:

Como bien dices, puedes obtener los alumnos de un curso mediante la tabla "role_assignments".

Si quieres obtener los usuarios de un curso, haz:

$context = get_context_instance(CONTEXT_COURSE, $course->id);

si haces una busqueda de los usuarios, en la tabla donde el context sea igual al que has sacado, habrás obtenido los usuarios de un determinado curso.

Un saludo

Alberto

En respuesta a Jorge Aranda García

Re: Obtener alumnos en 1.7

de Iñaki Arenaza -
Imagen de Desarrolladores Imagen de Desarrolladores de plugins Imagen de Documentadores Imagen de Moderadores Imagen de Moodlers de gran ayuda
Me suena que hay una función llamada get_course_students(), aunque está en deprecatedlib.php y según el texto que hay en la cabecera del mismo, el código nuevo no debería usar esas funciones porque desaparecerán en el futuro.

Sin embargo, puedes echar una ojeada a la implementación de la función para ver como usar la funcionalidad de los roles (obtener el contexto, etc.).

Saludos. Iñaki.
En respuesta a Iñaki Arenaza

Re: Obtener alumnos en 1.7

de Jorge Aranda García -
Muchas gracias por todo. No había visto esta función, pero la estudiare.

Aunque al final lo hice con $context = get_context_instance(CONTEXT_COURSE, $course->id);

y luego usando get_role_users.


Gracias a todos

En respuesta a Iñaki Arenaza

Re: Obtener alumnos en 1.7

de Gustavo Burgi -
Y si yo quisiera obtener los cursos en los que participa un alumno o profesor?
En respuesta a Gustavo Burgi

Re: Obtener alumnos en 1.7

de Jaime Perera Merino -
Si quieres todos los usuarios (alumnos Y profesores) te bastará con la solución que se propone aquí.

<<...

$context = get_context_instance(CONTEXT_COURSE, $course->id);

si haces una busqueda de los usuarios, en la tabla donde el context sea igual al que has sacado, habrás obtenido los usuarios de un determinado curso.

...>>