Quiero saber el nombre de campo correspondiente a la leyenda de tabla para un modelo dado en Rails.Obtener campo de clave foránea de asociaciones en Rails
Estoy mostrando subtítulos utilizando un modelo de consulta.
query.columns.map {| q | q.caption}
=> [ "Tracker", "Estado", "Prioridad", "Asunto", "cesionario", "Versión prevista", "Fecha de vencimiento", "% Hecho"]
columna tiene nombres que corresponden a los subtítulos
query.columns.map {| q | q.name}
=> [: tracker,: estado,: prioridad: sujeto,: assigned_to,: fixed_version,: DUE_DATE,: done_ratio]
Mi modelo se parece
Issue.columns.map {| q | q.nombre}
=> ["id", "id_tracker", "id_proyecto", "asunto", "descripción", "fecha_deudo", "id_categoría", "id_de_statudo", "asignado_a_idido", "id_prioridad", " fixed_version_id", "author_id", "created_on", "updated_on", "fecha_inicial", "done_ratio", "estimated_hours", "parent_id"]
Quiero conseguir el nombre del campo (el nombre del campo db) correspondiente a un título de la información anterior.
asociación de la muestra en el modelo
belongs_to :assigned_to, :class_name => 'Principal', :foreign_key => 'assigned_to_id'
Así que para la asociación anterior quiero saber la clave externa.
para assigned_to
quiero 'assigned_to_id'
Esto funcionó para mí ... Issue.reflections [: assigned_to] .OPTIONS [: foreign_key] .. gracias –