Forum: Rails-ES relacion has_many, belong (newbie)

Posted by Angel Marques (angel21os)
on 2010-01-14 01:24
hola a todos, tengo un problema algo extraño, he realizado los ejemplos
de los libros y todo perfecto, relacionado objetos bien pero ahora estoy
realizando otro ejemplo de aplicacion y no me esta funcionando las
relaciones (el mapeo), he releido varias veces tanto el libro donde la
saque, como mis apuntes y todos los libros y no encuentro el error, voy
a colocar a ver si me alguien me ayuda

cree 2 scaffolds uno tales (historias) y otro genres (generos) cada
historia debe tener uno y solo un genero

las tablas van como
create_table :tales do |t|
      t.integer :id
      t.string :title
      t.text :body_text
      t.timestamp :submision_date
      t.string :status
      t.int :genre_id      la "clave" que los relaciona

      t.timestamps

por otro lado tengo el genero
create_table :genres do |t|
      t.integer :id
      t.string :genre_name
      t.text :description

      t.timestamps

dentro de los modelos coloco (cada historia pertenece a un genero-un
genero puede tener muchas historias)
class Tale < ActiveRecord::Base
  belongs_to :genre

end


class Genre < ActiveRecord::Base
  has_many :tales

end

ya con colocar el genre_id que relaciona ambas tablas y el belong-has
many tengo entendido que deberia funcionar, no obstante siempre me salta
un error
al invocar un objeto con una de estas relaciones podria hacer algo como:
@tale.genre=params(:genre)?
si quiero colocar el genero (genre) de una historia (tales) esta es la
forma?..

gracias por su atencion
Posted by Carlos Belizón (paliyoes)
on 2010-01-19 15:51
Angel Marques wrote:
> hola a todos, tengo un problema algo extraño, he realizado los ejemplos
> gracias por su atencion...

No debes usar has_many, usa has_one.

Saludos.
Please log in before posting. Registration is free and takes only a minute.
Existing account (Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
No account? Register here.