【问题标题】:Rails Public_Activity gem recipient id getting errorRails Public_Activity gem 接收者 ID 出错
【发布时间】:2015-08-19 20:37:17
【问题描述】:

我正在使用一个名为 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 还是一个用户?该错误看起来您使用的类型不正确。
  • 我需要添加收件人 ID 如何在此处添加 current_user 可访问但如何使用 @feed = 2
  • 试试@friend= User.find(2) 看看是否可行
  • 成功了,为什么我不能使用 2 号
  • 因为数字 2 本身没有任何意义。 Current_user 不是一个数字,它是一个用户对象,这就是它起作用的原因。然后我会将其发布为正确答案。如果这为您解决了问题,请接受。

标签: ruby-on-rails public-activity


【解决方案1】:

收件人正在寻找用户而不是 ID。 current_user 之所以起作用,是因为它是一个用户对象。如果你使用了 current_user.id,它就不会起作用。

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

【讨论】:

  • 有什么我可以在模型中编辑这个东西或者我必须这样做
  • 可能吗?我还没有真正使用过公共活动宝石。这可能会为您指明正确的方向,否则听起来您可能需要发布一个新问题。 stackoverflow.com/questions/17131414/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-17
  • 1970-01-01
  • 2023-03-19
相关资源
最近更新 更多