Estoy implementando una funcionalidad para rastrear qué artículos ha leído un usuario.
create_table "article", :force => true do |t|
t.string "title"
t.text "content"
end
Esta es mi migración hasta ahora:
create_table :user_views do |t|
t.integer :user_id
t.integer :article_id
end
Siempre se consultará la tabla user_views para buscar ambas columnas, nunca solo una. Mi pregunta es cómo debería verse mi índice. ¿Hay alguna diferencia en el orden de estas tablas, debería haber más opciones o lo que sea? Mi base de datos de destino es Postgres.
add_index(:user_views, [:article_id, :user_id])
Gracias.
ACTUALIZACIÓN:
Debido a que solo puede existir una fila que contenga los mismos valores en ambas columnas (ya que al saber si user_id HA leído article_id), ¿debería considerar la opción: única? Si no me equivoco, eso significa que no tengo que hacer ninguna verificación por mi cuenta y simplemente hacer una inserción cada vez que un usuario visita un artículo.