Вот например ты делаешь сервис с курсами, ты же в дальнейшем будешь пилить кастомные модули все больше и больше, тогда логично привязать их к курсам по дженерику, так как модули Координально разные.
Допустим у тебя модель КонтентКурса, в ней должны быть ссылки на другие модели для Модулей/Шагов/Страниц курса, которые по сути разные будут. Тут дженерик отлично подходит