TimGoulain / tim_app

ruby on rails tutorial
0 stars 0 forks source link

ActiveRecord Migrations #3

Closed jibai31 closed 9 years ago

jibai31 commented 9 years ago

http://guides.rubyonrails.org/active_record_migrations.html

TimGoulain commented 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
jibai31 commented 9 years ago

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.

TimGoulain commented 9 years ago

Merci !