En una tabla de unión, ¿cuál es la mejor solución para la ausencia de Rails de una clave compuesta?

create_table :categories_posts, :id => false do |t|
  t.column :category_id, :integer, :null => false
  t.column :post_id, :integer, :null => false
end

Tengo una tabla de unión (como arriba) con columnas que hacen referencia a una @ correspondien categorías mesa y una posts mesa. Quería imponer una restricción única enla clave compuesta category_id, post_id en el categories_posts unirse a la mesa. Pero Rails no es compatible con esto (creo).

Para evitar la posibilidad de filas duplicadas en mis datos que tengan la misma combinación de category_id y post_id, ¿Cuál es la mejor solución para la ausencia de una clave compuesta en Rails?

Mis suposiciones aquí son:

La columna predeterminada de número automático (id: entero) no haría nada para proteger mis datos en esta situación.ActiveScaffold puede proporcionar una solución, pero no estoy seguro de si es excesivo incluirla en mi proyecto simplemente para esta característica única, especialmente si hay una respuesta más elegante.

Respuestas a la pregunta(10)

Su respuesta a la pregunta