2

我正在尝试创建某种活动提要,但无法获得所需的值。

我有一个执行此操作的控制器

  def show
    @user = User.find(params[:id])
    @ideas = Idea.find(@user)
    @lists = List.find(@user)
    @li_array = (@lists + @ideas).sort{|a,b| -(a.created_at <=> b.created_at)}      
  end

我是 Rails 的新手,我正在尝试将来自想法和列表的用户的一系列值放在一起。但我发现我不能做我现在正在做的事情,因为它只会传递当前用户的 id 来匹配 Idea/List 的 id,但我需要做的是找到用户的 id 列并搜索基于在@用户上。

我需要从用户那里获取所有值,最好的方法是什么?

楷模

用户.rb

  has_many :lists
  has_many :ideas, :through => :lists

列表.rb

  has_many :ideas
  belongs_to :user

想法.rb

  belongs_to :list
  belongs_to :user

谢谢

4

1 回答 1

2

你可以简单地做:

@user = User.find(params[:id])
@ideas = @user.ideas
@lists = @user.lists
于 2013-05-17T03:02:43.810 回答