Я делаю так:
http://plnkr.co/edit/1jHL9FX9yxR7PlN03j1i?p=preview (предпоследний пример с многоязычностью). Только еще дополнительно фильтр по нужному языку навешиваю, чтобы отображать только нужные языки. Работающий пример:
http://tamtakoe.ru/demo/ (в меню языков можно включить/отключить нужные). Переводы, естественно, хранятся в базе.
Только все это делаю в админке, а для обычных пользователей язык меняется перезагрузкой страницы.