加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 从Rails中的关联获取外键字段

发布时间:2020-12-16 22:08:53 所属栏目:百科 来源:网络整理
导读:我想知道Rails中给定模型的表标题对应的字段名称. 我使用查询模型显示标题. query.columns.map{|q| q.caption} = [“Tracker”,“Status”,“Priority”,“Subject”,“Assignee”,“Target version”,“Due date”,“% Done”] 列具有与标题对应的名称 quer
我想知道Rails中给定模型的表标题对应的字段名称.

我使用查询模型显示标题.

query.columns.map{|q| q.caption}
=> [“Tracker”,“Status”,“Priority”,“Subject”,“Assignee”,“Target version”,“Due date”,“% Done”]

列具有与标题对应的名称

query.columns.map{|q| q.name}
=> [:tracker,:status,:priority,:subject,:assigned_to,:fixed_version,:due_date,:done_ratio]

我的模型看起来像

Issue.columns.map{|q| q.name}
=> [“id”,“tracker_id”,“project_id”,“subject”,“description”,“due_date”,“category_id”,“status_id”,“assigned_to_id”,“priority_id”,“fixed_version_id”,“author_id”,“created_on”,“updated_on”,“start_date”,“done_ratio”,“estimated_hours”,“parent_id”]

我想要从上面的信息获取对应于标题的字段名称(db字段名称).

模型中的样本关联

belongs_to :assigned_to,:class_name => 'Principal',:foreign_key => 'assigned_to_id'

所以对于以上关联,我想知道外键.

为了assign_to我想要“assigned_to_id”

解决方法

反射散列包含这种信息:
Issue.reflections['assigned_to'].foreign_key

您还可以获取其他信息,例如类(.active_record)或关联类型(.macro).在rails 4.2之前,这个哈希的键是符号而不是字符串.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读