В продолжении темы упакованных булевых значений предлагаю свое решение на Javascript.
Общая идея в том, что в базе данных хранится только целое число и, соответственно, в интерфейс оно будет выводиться как input:text или input:hidden. Мы его скрываем и заменяем на представление из соответствий в виде чекбоксов.
Ниже пример и сам скрипт.