Join table

Siguendo los pasos del Agile tengo que crear una join table:

create_table :products do |t|
t.column …
end

create_table :categories do |t|
t.column …
end

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

add_index :categories_products, [:product_id, :category_id]
add_index :categories_products, :category_id

Rails asume que la join table es aquella nombrada con las dos tablas en
orden alfabético, pero si quiero nombrarla con otro nombre tengo que
añadir una declaración para que Rails lo encuentre. Si quiero ponerle
otro nombre a la join table cómo puedo añadir esta declaración y dónde?
gracias

2008/1/30 Miguel Angel Calleja Lázaro [email protected]:

create_table :categories_products, :id=>false do |t|
otro nombre a la join table cómo puedo añadir esta declaración y dónde?
gracias


Ror-es mailing list
[email protected]
simplelogica.net

La tienes que incluir cuando utilizas has_and_belongs_to_many, es
decir en las clases Product y Category:

— app/models/product.rb —
class Product < ActiveRecord::Base
has_and_belongs_to_many ‘categories’, :join_table => ‘tu_nombre_aqui’
end
— EOF —
— app/models/category.rb —
class Category < ActiveRecord::Base
has_and_belongs_to_many ‘products’, :join_table => ‘tu_nombre_aqui’
end
— EOF —

Bai.

On 30/01/2008, Miguel Angel Calleja Lázaro [email protected] wrote:

Siguendo los pasos del Agile tengo que crear una join table:

Rails asume que la join table es aquella nombrada con las dos tablas en
orden alfabético, pero si quiero nombrarla con otro nombre tengo que
añadir una declaración para que Rails lo encuentre. Si quiero ponerle
otro nombre a la join table cómo puedo añadir esta declaración y dónde?
gracias

Mmmmm, está obviamente en las opciones de habtm de la documentación de
la api. Es :join_table.

Otra opción que a mi me gusta más es crear un modelo Categorizations y
usar has_many :through


Manuel, que
piensa que eres una excelente persona y medra en torno a
http://simplelogica.net y/o http://simplelogica.net/logicola/
Recuerda comer mucha fruta y verdura.

Manuel González Noriega
escribió:>

Mmmmm, está obviamente en las opciones de habtm de la documentación de
la api. Es :join_table.

Otra opción que a mi me gusta más es crear un modelo Categorizations y
usar has_many :through

Estaba viendo el :through, me ha resuelto todas las dudas ya, muchas
gracias a los dos.