¿Cómo relato dos campos con Ruby en Rails?
-
16-09-2019 - |
Pregunta
Acabo de comenzar a usar Ruby en Rails para ver cómo es.
Tengo un modelo de usuario con una ID y un modelo de publicación con un Adderid. El Adderid del modelo POST debe ser la ID de usuario del usuario que lo creó.
¿Cómo puedo relacionarlos con rubí en rieles?
Solución
La convención Rails para claves extranjeras le daría a su modelo de publicación una columna User_ID en lugar de Adderid. Puede romper la convención, pero eso requiere un poco más de configuración, como a continuación:
class User < ActiveRecord::Base
has_many :posts, :foreign_key => :adderId
end
class Post < ActiveRecord::Base
belongs_to :adder, :class_name => "User", :foreign_key => :adderId
end
Si le dio a Post a User_ID, podría hacer esto:
class User < ActiveRecord::Base
has_many :posts
end
class Post < ActiveRecord::Base
belongs_to :user
end
Recomendaría echar un vistazo al Guía de rieles para asociaciones de registros activos, que cubre todo lo anterior y mucho más.
Otros consejos
Parece que esta pregunta Parece estar haciendo lo que estás tratando de hacer.
Lo siento si entendí mal tu pregunta, yo también soy nuevo en Ruby on Rails.