设计认证gem:如何保存登录的用户ID?
我在Ruby on Rails 3应用程序中使用Devise Ruby gem。 当登录用户创建我的某个模型时,我想将其用户ID保存为创建它的人。 我该怎么办?
-
使用名为
user_id
integer
类型的列创建迁移文件,这是存储关联的位置。 (有关如何执行此操作的详细信息,请参阅迁移指南 )。 -
在您的模型中,添加:
belongs_to :user
( 有关详细信息,请参阅关联指南 ) -
在模型的控制器中,在create操作中添加
@your_model.user = current_user
。 这将完成您正在寻找的关联。 (current_user
是由devise提供的方法,它返回当前登录用户的User ActiveRecord)
注意:实际关联的方法不止一种。 我建议在控制器中进行,但可以在模型或其他地方完成。