water/mainline — pull request #116 by oleander (2012-03-21 01:03:24+00:00)
Title: Ny relation mellan labbgrupp och student

I stället för att koppla `LabGroup` direkt till en student så har jag valt att koppla `LabHasGroup`-modellen till en student. På så vis kan en användare göra **en** labb med **en** grupp för att sedan byta grupp.

DSL:et är precis likadant som innan, enda skillnaden är att att `StudentRegisteredForCourse` är ansluten till `LabHasGroup` i stället för `LabGroup`.

Iden är som följer;

1. En administratör skapar en eller flera labbar till en given kurs och lägger till två studenter.
2. En student väljer nu att skapa en grupp för nyss skapad kurs. När gruppen är skapad så genereras automatiskt en `LabHasGroup` för varje `GivenCourse#labs` och `LabGroup`. `LabHasGroup`-kopplingen sammanfogas i samma veva med `StudentRegisteredForCourse`.
3. En andra elev väljer nu att gå med i gruppen som skapades. När elven registerat sig, te.x m.h.a `LabGroup#add_student` så skapas automatiskt kopplingen mellan `LabGroup#lab_has_groups` och `Student#student_registered_for_courses`.
4. Väljer nu den första eleven att avregistrera sig från en godtycklig labb så behöver vi endast flytta kopplingen mellan `StudentRegisteredForCourse` och `LabHasGroup`.

Vad tror ni?