for at besvare mit eget spørgsmål:efter nogle undersøgelser fandt jeg ud af, at rails (activerecord) har brug for id-felter på tabeller, der er kortlagt til modeller. hvis du bruger linktables er de ikke nødvendige - men for tabeller du vil adressere som modeller, er de det. i mit tilfælde var løsningen at tilføje
set_primary_key :cal_id
hvor cal_id er min unikke nøgle.