0

我已经生成了一个User模型以及另外两个名为Update和的随附模型Round。该类User响应控制台中的轮次和更新,但当我在浏览器中调用它时不响应。

在控制台中

:001 > user = User.first
:002 > user.updates
 Update Load (0.2ms) SELECT "updates".* FROM "updates" WHERE "updates"."user_id" = 1
 => [] //expected since there are no updates in the database but it responds

/user/1/更新错误

undefined method 'updates' for #<Class:0x98afa1c>

用户.rb

class User < ActiveRecord::Base

  attr_accessible :admin, :name, :provider :uid
  has_many :rounds
  has_many :updates

end

更新.rb

class Updates < ActiveRecord::Base

  attr_accessible :user_id :recpcount
  belongs_to :user
end

更新控制器.rb

class UpdatesController < ApplicationController

  def index
     @hist = User.updates.find(params[id])
  end
end

我确定我在某处搞砸了一些简单的事情。谁能带领我朝着正确的方向前进?谢谢!

4

2 回答 2

1

在控制台中,您调用updates的是 User实例,但在控制器中,您是在 User本身上调用它。

您可能想要:

@hist = User.find(params[:id]).updates
于 2012-07-24T01:30:17.543 回答
0
@hist = User.updates.find(params[id])

这是你的问题。 User类没有updates,实例有。你可能想要:

@user = User.find(params[id])
@hist = @user.updates
于 2012-07-24T01:29:38.973 回答