Ruby on rails将会话中的信息传递给db

时间:2013-06-08 15:56:09

标签: ruby-on-rails ruby session

我一直在尝试设置一个小小的Twitter应用程序来教我自己ruby on rails,我有一个登录页面可以工作并存储用户这样

    session[:user_id] = user.id

我可以在视图中使用它,但我正在尝试创建基于它的关系,以便在基本形式的新页面上创建的tweet链接到当前会话用户。

我出于某种原因无法弄清楚该怎么做。

2 个答案:

答案 0 :(得分:0)

您可以使用current_user(例如)方法:

def current_user
  @current_user ||= User.find_by_id(session[:user_id])
end

如果您已经拥有此功能,则可以创建帖子:

@post = current_user.posts.create(params[:post])

当然,您还应该检查是否有任何用户在创建帖子之前已登录,或者您将NoMethodError

答案 1 :(得分:0)

参见devise gem https://github.com/plataformatec/devise Devise在视图和控制器中提供了current_user和user_session方法

相关问题