Cómo vincular el formulario después de crear rieles unirse a la tabla

Hola, tengo un modelo de productos en mi aplicación Rails 3.1 que se parecía a esto:

+----------------+---------------+------+-----+---------+----------------+
| Field          | Type          | Null | Key | Default | Extra          |
+----------------+---------------+------+-----+---------+----------------+
| id             | int(11)       | NO   | PRI | NULL    | auto_increment |
| type           | text          | YES  |     | NULL    |                |
| title          | text          | YES  |     | NULL    |                |
| description    | text          | YES  |     | NULL    |                |
| price          | text          | YES  |     | NULL    |                |
| img_src        | text          | YES  |     | NULL    |                |
| source         | text          | YES  |     | NULL    |                |
| sr_id          | text          | YES  |     | NULL    |                |
| categories     | text          | YES  |     | NULL    |                |
+----------------+---------------+------+-----+---------+----------------+

Creé un Categories_Products usando la siguiente migración (no creó un modelo):

class CreateCategoriesProducts < ActiveRecord::Migration
  def change
    create_table :categories_products, :id => false do |t|
      t.references :product
      t.text :categories
      t.timestamps
    end
  end
end

1) ¿Cómo configuro el formulario de mis productos para que cuando se complete el campo de texto de Categorías, se actualizará la tabla de unión que acabo de crear? He eliminado la columna de categorías de la tabla de productos.

2) La razón principal por la que hice esto es porque inicialmente tuve múltiples ID de Categoría en un solo campo, y necesitaba dividirlas para poder realizar fácilmente diferentes conteos y demás. El usuario debe poder agregar múltiples categorías por producto, ¿cómo puedo decirle a Rails que guarde cada categoría agregada en una nueva fila en la db?

Respuestas a la pregunta(1)

Su respuesta a la pregunta