friendly_id在belongs_to模型上

时间:2017-01-03 18:52:19

标签: ruby-on-rails ruby ruby-on-rails-4 devise friendly-id

我有一个设计User模型和一个配置文件模型belongs_to User

class Profile < ApplicationRecord
    belongs_to :user
end

User模型添加了一个名为name的列,用于存储用户名。

我正在使用friendly_id gem并希望将其应用于Profile模型,如下所示:

class Profile < ActiveRecord::Base
  belongs_to :user
  extend FriendlyId
  friendly_id :name, use: :slugged
end 

但是,我想在名为Profile的{​​{1}}模型中创建另一个列,我想在此使用name模型列User,其中配置文件{{1} }。

1 个答案:

答案 0 :(得分:3)

friendly_id存储库owner对来自Github issue的类似问题的回答:

  

抱歉,不会这样做。这就是FriendlyId 3.x及以下的工作方式。如果你有非常大的表,那么在一个单独的表中,slug的性能会明显变差。

所以简而言之,slu the必须放在同一张桌子上。