Lo que quiero decir es que si tengo dos modelos, conectados por una asociación has_and_belongs_to_many, ¿puedo almacenar otros datos en la tabla de unión para cada asociación? Es decir, los datos adicionales no formarían parte de un solo registro en ninguna de las tablas, sino en lugar de la conexión entre ellos.Rieles: ¿es posible agregar un atributo adicional a una asociación has_and_belongs_to_many?
Mis modelos actuales son los siguientes:
class Part < ActiveRecord::Base
has_and_belongs_to_many :assemblies
has_and_belongs_to_many :packages
belongs_to :user
validates :name, :user_id, :presence => true
end
class Package < ActiveRecord::Base
has_and_belongs_to_many :parts
belongs_to :user
end
Así que el punto es que cada parte está disponible en muchos paquetes y cada paquete tiene diferentes partes. Lo que quiero agregar es una cantidad. Esa no sería la cantidad de cada parte, sino de cada paquete de cada parte.
No puedo encontrar cómo hacerlo en ActiveRecord. Si no estuviera usando rails/activerecord, solo agregaría una columna de cantidad a la tabla de unión que relaciona las partes con los paquetes. Obviamente podría hacer este cambio en una migración, pero ¿cómo accedería al valor usando ActiveRecord?
¿Qué programa usaste para hacer un bosquejo tan bonito? – MicFin
(mi referencia interna n. ° 485) ¿Cómo se actualiza la cita_fecha al mismo tiempo que se crea el registro completo y también cómo se lee el atributo adicional más adelante? Solo puedo hacerlo a través de Appointment.find_by ............. pero me gustaría algo menos raro como patient.appointsments.first.appointment_date – ace
Puede actualizar el atributo appointment_date de la siguiente manera: belongs_to: physician ,: touch =>: cita_fecha. – hashrocket