Db_schema_import & hbtm


#1

Bonjour,

J’ai une relation multivaluée entre deux tables A et B
Dans mon model j’ai en gros :

class A < ActiveRecord::Base
has_and_belongs_to_many :b
end

class B < ActiveRecord::Base
has_and_belongs_to_many :a
end

J’execute >rake db_schema_dump
Ca me génere un joli schema.rb

Comment je fais pour traduire cette relation multivaluée ?
La simple définition :
ActiveRecord::Schema.define() do
[…]
create_table “a_b” do |t|
t.column “a_id”, :integer
t.column “b_id”, :integer
end
[…]
end

ne fonctionne pas car lorsque je fais >rake db_schema_import, il me
rajoute automatiquement un id dans la table a_b

Est-ce que j’ai sauté une étape ?

Merci pour vos éclaircissement.
Nicolas T.


#2

Bonsoir Nicolas

tu peux utiliser create_table “a_b”, :id => false do … pour ta table
join

a+

Thibaut


#3

On 6/12/06, Thibaut Barrère removed_email_address@domain.invalid wrote:

tu peux utiliser create_table “a_b”, :id => false do … pour ta table join

Impeccable ! Merci. Il y a une doc où j’aurais pu trouvé cette info
par moi même ?


#4

Impeccable ! Merci. Il y a une doc où j’aurais pu trouvé cette info
par moi même ?

http://api.rubyonrails.com/classes/ActiveRecord/ConnectionAdapters/SchemaStatements.html#M000604

il y a également le site http://www.railshelp.com qui permet de faire
une
recherche par mot clé facilement (ex: create_table)

tu peux aussi suivre le blog de Josh S. qui donne des infos utiles
régulièrement sur les associations et sur AR:

http://blog.hasmanythrough.com/articles/2006/04/20/many-to-many-dance-off

a+

Thibaut