代码之家  ›  专栏  ›  技术社区  ›  slhck

轨道:查找分配给一个Y的所有X

  •  1
  • slhck  · 技术社区  · 14 年前

    我不熟悉Rails,所以请原谅我这个可能很愚蠢的问题。

    我有一个模型用户和一个模型实验,两者都通过一个habtm关系联系在一起。

    当我想显示时,假设: /experiments/1/users 它向我展示了所有的用户,而不是通过实验筛选出来的。好吧,那是因为 UsersController .

    用户控制器 因此,我定义:

    # GET /users
    # GET /experiment/:experiment_id/users
    def index
    
      if (params[:experiment_id] == nil)
        @users = User.all
      else
        @users = # HOW DO I FIND THE USERS FOR THE EXP?
      end
    
      respond_to do |format|
        format.html # index.html.erb
        format.xml  { render :xml => @users }
      end
    end
    

    我想过滤用户,但是 User.find_all_by_experiment_id 不存在: undefined method 通过实验找到#`

    我可以使用什么来获取分配给当前实验的用户?

    2 回复  |  直到 14 年前
        1
  •  4
  •   dain    14 年前

        2
  •  2
  •   fifigyuri    14 年前

    class Expetiment < ActiveRecord::Base
      has_many :users
      ...
    

    Experiment.find(params[:experiment_id]) users

    推荐文章