Генерирует ли команда поддержки rails scaffold информацию о переносе промежуточной таблицы модели "многие или многие"?

Product,Category - это две модели на рельсах3, связь между которыми такова:

продукт имеет_и_отмены_в_ многих категориях

категория has_and_belongs_to_many продукты

я могу использовать скаффолд генерировать миграцию для этих двух модельных использования

rails g scaffold product name:string
rails g scaffold category name:string

но как я могу сгенерировать информацию о миграции средней таблицы для многих моделей или мне нужно написать ее вручную, если это так, то мне сложно, надеюсь, кто-то может мне помочь.

2 ответа

Решение

Вам нужно создать эту таблицу самостоятельно

   create_table :products_categories, :id => false do |t| 
     t.integer :product_id 
     t.integer :category_id
   end

Предупреждение, вам нужно определить:id в false, потому что в этой таблице нет необходимости в столбце id. Если у вас есть столбец id, таблица недопустима для использования в has_and_belongs_to_many .

rails g model ProductCategories product:references category:references
Другие вопросы по тегам