ruby-on-rails - form_with - select rails helper
Rails tiene muchos con el nombre de alias (3)
En mi modelo de Usuario podría tener:
has_many :tasks
y en mi modelo de Tarea:
belongs_to :user
Entonces, suponiendo que la clave externa ''user_id'' se almacenara en la tabla de tareas, podría usar:
@user.tasks
Mi pregunta es, ¿cómo declaro la relación has_many de modo que pueda referirme a las tareas de un usuario como:
@user.jobs
... o ...
@user.foobars
Gracias un montón.
Dale una oportunidad:
has_many :jobs, foreign_key: "user_id", class_name: "Task"
Tenga en cuenta que :as
se usa para asociaciones polimórficas .
Podrías hacer esto de dos maneras diferentes. Una es mediante el uso de "como"
has_many :tasks, :as => :jobs
o
def jobs
self.tasks
end
Obviamente, la primera sería la mejor manera de manejarlo.
También puede usar alias_attribute
si aún desea poder referirse a ellos como tareas:
class User < ActiveRecord::Base
alias_attribute :jobs, :tasks
has_many :tasks
end