Ruby On Rails - muchos a muchos entre la misma mesa

Estoy tratando de crear una relación algo compleja en Rails, y estoy teniendo problemas para encontrar la mejor manera de hacerlo. Tengo una tabla de usuarios en la que cada usuario actúa como profesor y alumno. Me gustaría tener un has_many "estudiantes" (que también son solo usuarios) y un has_many "profesores" (que también son solo usuarios). No quiero hacer ninguna subclasificación o herencia de tabla única. Solo quiero dos muchos many_to_many's diferentes entre los usuarios. ¿Cuál es la mejor manera de hacer esto? ¿Es una mala idea hacer? ¿Hay una mejor solución?

Respuestas a la pregunta(1)

Su respuesta a la pregunta