Ruby on rails 如何按用户的电子邮件地址筛选rails对象?

Ruby on rails 如何按用户的电子邮件地址筛选rails对象?,ruby-on-rails,model,controller,Ruby On Rails,Model,Controller,我有以下型号: class Iosapp < ActiveRecord::Base belongs_to :user attr_accessible :active, :featured, :name, :partner validates :name, :presence => true end 试试这个: @iosapps = Iosapp.joins(:user).where(:users => {:email => 'test@test.com'}

我有以下型号:

class Iosapp < ActiveRecord::Base
  belongs_to :user
  attr_accessible :active, :featured, :name, :partner

  validates :name, :presence => true
end
试试这个:

@iosapps = Iosapp.joins(:user).where(:users => {:email => 'test@test.com'}).all
编辑:

或者,如果您希望将用户数据与iosapp数据一起返回,则:

@iosapps = Iosapp.includes(:user).where(:users => {:email => 'test@test.com'}).all
试试这个:

@iosapps = Iosapp.joins(:user).where(:users => {:email => 'test@test.com'}).all
编辑:

或者,如果您希望将用户数据与iosapp数据一起返回,则:

@iosapps = Iosapp.includes(:user).where(:users => {:email => 'test@test.com'}).all

我收到一个错误消息:没有这样的列:user.email:SELECT iosapps.*FROM iosapps internal JOIN users.id=iosapps.user\u id WHERE user.email=test@test.com'应该是users.email而不是user.email,您可能需要在类似的位置构造联接。whereusers.email=?,'test@test.com'已修复打字错误,请重试。输入错误如house9所示。我收到一个错误提示:没有这样的列:user.email:SELECT iosapps.*FROM iosapps internal JOIN users.id=iosapps.user\u id WHERE user.email=test@test.com'应该是users.email而不是user.email,您可能需要在类似的位置构造联接。whereusers.email=?,'test@test.com'已修复打字错误,请重试。打字错误正如house9建议的那样。