Muy bien, así que estoy planeando crear un sitio web con funcionalidad de votos a favor/en contra. Sin entrar en demasiados detalles sobre el resto del sitio, los usuarios podrán enviar contenido que pueda ser votado (similar a reddit en ese sentido, y solo en ese sentido). Las únicas "cuentas" en este sitio web serán para administradores y moderadores, lo que me lleva a la pregunta principal:¿La mejor manera de implementar votaciones ascendentes/negativas en un sitio web?
¿Cómo limito los votos a uno por usuario por publicación, de la mejor manera posible, sin cuentas?
El sitio también se hará uso de Django y MySQL, lo que me lleva a mi segunda pregunta:
¿Cómo almaceno votos en una base de datos MySQL? ¿Debo almacenar un número entero en un campo en cada publicación, o debería ser una tabla con un voto por fila? Mi suposición es definitivamente la primera, pero nunca he trabajado con algo como esto antes, así que solo quiero asegurarme.
¿Alguien podría apuntarme en la dirección general de cómo implementar la funcionalidad que quiero? Lo he estado pensando y he pensado en métodos que usan variables de sesión, cookies y/o direcciones IP. Sé que ninguna solución es perfecta sin cuentas, pero solo quiero algo que funcione lo suficientemente bien como para evitar que las personas envíen spam. No tengo ni idea, así que toda ayuda es apreciada.
Debe almacenar votaciones alternas y votos a la baja por separado, sobre todo debido a problemas de concurrencia al actualizar el conteo de votos. – fredley
Al limitar a través de la dirección IP, está perdiendo una gran parte de los posibles votos. Muchas escuelas, empresas e incluso dormitorios utilizan 1 dirección IP externa para muchos usuarios. No hay una buena forma de implementar un sistema sin tener cuentas de usuario. Debido a que limitar 100 empleados a tener 1 voto de la persona será inexacto, al igual que no tener límite de IP. – JClaspill
@JClaspill Debería haber mencionado esto en mi pregunta, pero en realidad el sitio web está dirigido a estudiantes de mi universidad (incluso he estado planeando publicar contenidos exclusivos para ellos). ¿Cuáles son las posibilidades de que mi universidad de más de 28,000 estudiantes use la misma dirección IP para todos? – GRardB