Class Product < ActiveRecord::Base
has_friendly_id :name, :use_slug => true
end
「製品」テーブル内にスラッグを格納する最も効率的な方法は何ですか? 複雑な検索クエリがあり、「スラッグ」テーブルとの結合がパフォーマンスのボトルネックになっています。
Class Product < ActiveRecord::Base
has_friendly_id :name, :use_slug => true
end
「製品」テーブル内にスラッグを格納する最も効率的な方法は何ですか? 複雑な検索クエリがあり、「スラッグ」テーブルとの結合がパフォーマンスのボトルネックになっています。
わかりました。これは古い質問ですが、これに遭遇する可能性のある他の人のために、注意したいと思います。
質問のコードスニペットはFriendlyId3.xからのものです。この場合、テーブルに列を追加し(slug
...以外は何でも呼び出しますcached_slug
)、モデルを更新して表示します。
Class Product < ActiveRecord::Base
has_friendly_id :name, :use_slug => true, :cache_column => 'cached_slug'
end
slug
friendly_id 4.xの時点では、テーブルに列を追加するだけでstring
、新しい構文を使用できます。
例えば:
Class Product < ActiveRecord::Base
extend FriendlyId
friendly_id :name, :use => :slugged
end
履歴レコード(404を回避するため)などを含む、friendly_idを最大限に活用するためのオプションと方法がたくさんあります...
詳細情報: http: //rubydoc.info/github/norman/friendly_id/master/frames
Friendly_id にスラッグ キャッシュが組み込まれました。