簡體   English   中英

如何瀏覽ActiveRecord關系的結果?

[英]How do I explore the results of an ActiveRecord relation?

這就是我在做什么:

[72] pry(main)> Connection.joins(:inviter_memberships).where(inviter_memberships: { invited: c.inviter_membership.invited })
=> #<Connection::ActiveRecord_Relation:0x3fe19aa2ce28>

但不確定如何探索該記錄,以查看適用於該關系的記錄。

我有一個Connection模型,該模型具有以下關聯:

# == Schema Information
#
# Table name: connections
#
#  id                    :integer          not null, primary key
#  membership_id         :integer
#  invited_membership_id :integer
# truncated for brevity

class Connection < ActiveRecord::Base
  belongs_to :inviter_membership, class_name: "Membership", foreign_key: "membership_id"
  belongs_to :invited_membership, class_name: "Membership", foreign_key: "invited_membership_id"    
end

我有一個Membership模型,如下所示:

class Membership < ActiveRecord::Base
  belongs_to :inviter, class_name: "User", foreign_key: "user_id"
  belongs_to :invited, class_name: "User", foreign_key: "invited_id"
  has_many :connections, dependent: :destroy
end

#<Connection::ActiveRecord_Relation:0x3fe19aa2ce28>表示您的查詢有問題,更多信息在這里

關於探索查詢的結果:可以使用兩種方式查看,一種更簡單的方法是在查詢末尾添加.all ,另一種是在提示下執行以下操作

Connection.joins(:inviter_memberships).where(inviter_memberships: { invited: c.inviter_membership.invited }).each do |record|
  puts "---------"
  puts record
end

使用firstsecondthirdlast會向您顯示您正在應用的查詢,然后您可以查看一下並調試查詢出了什么問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM