реализация базы данных с помощью рельсов - PullRequest
0 голосов
/ 06 марта 2012

У меня есть несколько флажков, которые представляют каждый день недели ... Пользователь может проверить один или несколько дней недели. Как мне сохранить его в моей базе данных? Поле с "днями" и числовым представлением каждого дня? так, если они проверят понедельник, и во вторник он будет хранить 12? Я не уверен, что самый оптимальный способ сделать это. Спасибо.

Ответы [ 2 ]

1 голос
/ 06 марта 2012

Если вам не нужен какой-либо поиск по нему, вы можете использовать метод serialize для сериализации в массиве вашего вывода. Вы можете сделать это

serialize :days, Array

При такой конфигурации день сохраняется как строка в вашей базе данных. Эта строка является представлением Yaml вашего массива. Поэтому, когда вы получаете дни от вашей модели. У вас есть результат в виде массива.

0 голосов
/ 06 марта 2012

Рекомендую прочитать http://en.wikipedia.org/wiki/Database_normalization.

Лично я бы сохранил его с полем datetime и полем user_id. Вот и все. Это может привести к большему количеству данных, но их проще выполнять с помощью поиска и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...