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

ruby-on-rails – rails belongs_to has_one.需要一些解释

发布时间:2020-12-17 01:48:28 所属栏目:百科 来源:网络整理
导读:我有两个型号: 客户和联系方式 Customers表包含列:id,:firstName,:lastName 联系人表有列:id,:cid,:hphone,:cphone 所以如果Customers表有数据 1 Josh McDonnel 然后Contacts表有对应的 5 1 947-245-2342 342-543-8585 我可以在这里使用哪些关联?
我有两个型号:

客户和联系方式

Customers表包含列:id,:firstName,:lastName

联系人表有列:id,:cid,:hphone,:cphone

所以如果Customers表有数据

1  Josh   McDonnel

然后Contacts表有对应的

5   1   947-245-2342 342-543-8585

我可以在这里使用哪些关联?

请联系

belongs_to :customer,:foreign_key => "id",:class_name => "Customer"

客户课程应该有什么?

另外,如果我想获得所有客户(firstName,lastName和相应的hphone和cphone),将如何看待简单的find_byXXX

解决方法

你很亲密,但你的belongs_to应该是这个. :foreign_key应该是存储对主id的引用的字段的名称:

belongs_to :customer,:foreign_key => "cid"

在您的Customer.rb类中:

has_one :contact,:foreign_key => "cid"

最后,您的搜索可能如下所示:

@customers = Customer.all(:include => :contact)

然后你可以在视图的循环中使用它:

<% @customers.each do |customer| %>
   <p>Name: <%= customer.firstName %> <%= customer.lastName %></p>
   <p>Home: <%= customer.contact.hphone %></p>
   <p>Work: <%= customer.contact.cphone %></p>
<% end %>

顺便说一句,如果您使用customer_id而不是cid,那么您的关联可能只是:

#Contact.rb
belongs_to :customer

#Customer.rb
has_one :contact

(编辑:李大同)

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

    推荐文章
      热点阅读