Ruby on rails Rails Public_活动gem收件人id获取错误

Ruby on rails Rails Public_活动gem收件人id获取错误,ruby-on-rails,public-activity,Ruby On Rails,Public Activity,我正在使用一个名为Public_Activity的gem,每当有人为我正在使用的代码创建评论时,我都会尝试添加一个收件人: @comment.create_activity :create, recipient: @friend, owner: current_user wehre@freind=2或其他任何东西,当我使用它时,我得到以下错误: NoMethodError (undefined method `primary_key' for Fixnum:Class): 当我使用此代码时:

我正在使用一个名为Public_Activity的gem,每当有人为我正在使用的代码创建评论时,我都会尝试添加一个收件人:

@comment.create_activity :create, recipient: @friend, owner: current_user
wehre@freind=2或其他任何东西,当我使用它时,我得到以下错误:

NoMethodError (undefined method `primary_key' for Fixnum:Class):
当我使用此代码时:

@comment.create_activity :create, recipient: current_user, owner: current_user

它工作完美我需要与其他用户一起更新收件人我如何才能做到这一点任何帮助。

收件人正在寻找一个用户而不是id。当前用户工作的原因是因为它是一个用户对象。如果您使用了当前的_user.id,它将不会工作


使用User.find(2)获取用户对象。

收件人需要id还是用户?该错误看起来您使用的类型不正确。我需要添加收件人id。我如何才能在此处添加当前用户是可访问的,但我如何使用@feed=2try@friend=user。查找(2)并查看是否有效它为什么不能使用数字2,因为数字2本身没有任何意义。当前用户不是数字,而是用户对象,这就是它工作的原因。我会把这个作为正确答案贴出来。如果这为你解决了问题,请接受这个。有什么我可以在模型中编辑这个东西,或者我必须这样做吗?我还没有真正使用公共活动宝石。这可能会为您指明正确的方向,否则听起来您可能需要发布一个新问题。