Ruby on rails Rails用户类没有响应方法,给出未定义的方法错误
我已经生成了一个Ruby on rails Rails用户类没有响应方法,给出未定义的方法错误,ruby-on-rails,ruby,Ruby On Rails,Ruby,我已经生成了一个用户模型,以及另外两个名为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
用户
模型,以及另外两个名为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>
的未定义方法“更新”#
User.rb
class User < ActiveRecord::Base
attr_accessible :admin, :name, :provider :uid
has_many :rounds
has_many :updates
end
class Updates < ActiveRecord::Base
attr_accessible :user_id :recpcount
belongs_to :user
end
class UpdatesController < ApplicationController
def index
@hist = User.updates.find(params[id])
end
end
class用户
更新.rb
class User < ActiveRecord::Base
attr_accessible :admin, :name, :provider :uid
has_many :rounds
has_many :updates
end
class Updates < ActiveRecord::Base
attr_accessible :user_id :recpcount
belongs_to :user
end
class UpdatesController < ApplicationController
def index
@hist = User.updates.find(params[id])
end
end
类更新
更新\u controller.rb
class User < ActiveRecord::Base
attr_accessible :admin, :name, :provider :uid
has_many :rounds
has_many :updates
end
class Updates < ActiveRecord::Base
attr_accessible :user_id :recpcount
belongs_to :user
end
class UpdatesController < ApplicationController
def index
@hist = User.updates.find(params[id])
end
end
类更新控制器
我肯定我把一些简单的事情搞砸了。谁能把我引向正确的方向?谢谢
@hist = User.updates.find(params[id])
这是你的问题<代码>用户该类没有更新
,实例有。您可能想要:
@user = User.find(params[id])
@hist = @user.updates
在控制台中,您对用户实例调用
更新
,但在控制器中,您对用户类本身调用它
您可能需要:
@hist = User.find(params[:id]).updates
谢谢你,这正是我需要的!