我正在构建一个 Rails 3.2.6 应用程序,在这个应用程序中我得到了用户、事件和签到。我也在使用 Postgres。
用户
has_many :events
has_many :checkins
活动
belongs_to :user
has_many :checkins
签到
belongs_to :user
belongs_to :event
当我调用用户进行的所有签入(使用下面的代码)时,我还想获取签入所附加的事件的所有基本数据,但它不起作用。我只得到签到的数据,没有得到关于事件的任何信息。怎么了?
current_user.checkins.includes(:event)
我也试过这个:
current_user.checkins.joins(:event)
更新
我这样做是为了获取所有事件数据而不是签入数据。这是正确的做法吗?
checkins = current_user.checkins
@array = Array.new
@array = checkins.collect {|checkin| checkin.event}
render :json => {:results => @array}