Closed jibai31 closed 9 years ago
Yo, ça fait quoi un join table dans un model ?
class CreateJoinTableCustomerProduct < ActiveRecord::Migration
def change
create_join_table :customers, :products do |t|
# t.index [:customer_id, :product_id]
# t.index [:product_id, :customer_id]
end
end
Déjà si tu mets 3 back-quotes avant et après ton code dans un commentaire sur Github ça le formate correctement (édite ton commentaire pour voir ce que j'ai fait). Ou si t'as qu'une seule ligne, tu sautes une ligne avant une ligne après, et tu mets 4 espaces à gauche. Ou si t'as qu'un mot, tu l'entoures de back-quotes.
La join table c'est pour une relation has_and_belongs_to_many.
A Customer
has many Products
. A Product
has many Customers
. Tu peux pas mettre un customer_id dans product (un product peut avoir plusieurs customer_id associées). Ni mettre un product_id dans customer. Du coup tu définis une autre table customers_products
qui fait juste le lien entre un customer et un product.
Merci !
http://guides.rubyonrails.org/active_record_migrations.html