我遇到插入数据库的问题。首先解释我的小博客应用程序。
模特:用户och帖子。 http://pastie.org/2694864 帖子有列:标题,正文,用户ID
3个控制器: 会话,应用程序(使用current_user)和PostController:http://pastie.org/2695386
我的登录会话似乎有效但是当登录用户应该写帖子时,数据库无法识别任何user_id。它只是设置为零。 rails console:
=> #<Post id: 17, title: "hello", body: "hello world", created_at: "2011-10-14 14:54:25", updated_at: "2011-10-14 14:54:25", user_id: nil>
我想这是在后置控制器第88行,这应该是固定的,但我无法弄明白。 我也尝试过:
@post = Post.new(params[:post], :user_id => session[:user_id])
但是user_id仍设置为nil!
这是我的第一个应用程序,所以对于详细的回复,我会非常感激。
坦!
答案 0 :(得分:0)
问题是你传递Post.new
两个参数(在这种情况下是两个哈希),但它只需要一个参数。试试这个:
@post = Post.new(params[:post].merge!(:user_id => session[:user_id]))