如果_header.html.erb显示@ current_user.name的值,为什么post_controller.rb将其显示为nil?

时间:2019-05-08 23:37:53

标签: ruby-on-rails ruby

我将User类更改为has_many个帖子,并且这些帖子属于:user。 在完成rails db:reset之后,然后在posts_controller.rb新方法中,尝试设置

   def new
    @post = Post.new
    @post.user_id = @current_user.id
  end

现在,_header.html.erb填写了@ current_user.name,但是在上述posts_controller.rb的新方法中,它给出了一个错误,即@current_user为nil并且字段ID未知。如何设置帖子的user_id?

1 个答案:

答案 0 :(得分:1)

尝试使用@post.user_id = current_user.id-删除@符号。 current_user可能是一个辅助方法,您可能尚未初始化@current_user实例变量。