Я нахожусь на этапе планирования создания приложения, где все пользователи (зарегистрированные или нет) могут голосовать каждую минуту или около того. Окно голосования должно длиться установленный период времени (например, 1 месяц). В этот момент определяется выигрышный объект, и период голосования сбрасывается и начинается со всего. Затем посетители могут оставлять комментарии о победителе за этот период. Мой вопрос, как вы думаете, лучший способ установить что-то подобное?Структура для повторяющихся бесчисленных избирательных бюллетеней
Вот мои текущие мысли, но не кажется идеальным:
1) Голосуйте модель: ENTITY_ID, contest_id, user_id (по желанию), created_at, IP_Address
- поиск ф в db на новое голосование и посмотреть, не превышает ли время разницу между допустимым временем голосования между голосами пользователей
- использует CAPTCHA каждое переменное количество голосов для обеспечения человека
- расчет поел текущий подсчет голосов путем подсчета всех записей для лица для участия в конкурсе
2) Contest модель: начало и конец DateTime
- имеет еженедельно или ежемесячно хроны создать новейший экземпляр
- голосов найти текущий конкурс, если текущая дата между этими двумя датами
- отдельная модель позволяет создавать атрибуты конкурса (например, специальные виды конкурсов)
3) Победитель модель: contest_id, ENTITY_ID
- позволяет пользователям комментарии на прошлых победителей конкурса
что вы имеете в виду наилучшим образом? Архитектура? Какой язык использовать для его реализации? – Adrian
Архитектура. Я собираюсь использовать ROR. Я показал структуру модели/db, которую я рассматриваю выше. Мой вопрос - лучший способ его структурирования? – Marc