current_user和created_at导致TypeError

时间:2012-05-24 21:23:43

标签: ruby-on-rails-3.2

我正在玩ruby试图实现像app这样的基本社交网络。

我有两个视图,我想显示状态更新,用户#show和主页(您可以在其中添加状态更新,还可以显示您自己的状态)。

在主页上,它返回Home #index中的错误TypeError,无法将nil转换为确切的数字。但是,如果我硬编码@user作为User.find(1)工作正常,它似乎冲突就是@user = current_user(我正在使用设计)。

家庭控制器:

    class HomeController < ApplicationController
  def index
    @user = current_user
    @new_status_update = current_user.status_updates.build if user_signed_in?
    @status_updates = @user.status_updates
  end
end

用户控制器:

class UsersController < ApplicationController
  before_filter :authenticate_user!
  load_and_authorize_resource :only => :index

  def show
    @user = User.find(params[:id])
    @status_updates = @user.status_updates
  end

end

视图中的循环相同

1 个答案:

答案 0 :(得分:0)

好的,我通过将current_user包装在User.find(current_user)

中解决了这个问题

这可能不是最好的方式,但至少有效..