导轨:使用友好的_id/slug与关联模型的列



我已经收到了我想被打开的联系模型(友好的gem)。通过使用来自用户模型的USER_NAME列属于。

class Contact < ApplicationRecord
  belongs_to :user
  extend FriendlyId
  friendly_id self.user.user_name, use: :slugged

但是在我的导轨控制台中键入Contact.find_each(&:save)我会遇到此错误:

nomethoderror(未定义的方法'供联系人(致电 建立连接的" contact.Connection":class)

Rails版本:5.2.2Friendly_id Gem:5.2.4

friendlyid始终使用一种方法作为slug文本的基础,对于上面的问题,我认为您为user_name创建方法,并在方法中调用相关字段

class Contact < ApplicationRecord
  belongs_to :user
  extend FriendlyId
  friendly_id :user_name
  def user_name
    user.user_name
  end
end

使用这种方式:

class Contact < ApplicationRecord
  belongs_to :user
  extend FriendlyId
  friendly_id :user_name
  def user_name
    user.user_name
  end
end

最新更新