2011-01-30 13 views
1

friendly_id gem docsには、すべてのスラッグが作成されるテーブルslugsを作成すると記載されています。しかしそれに加えて、cached_slugsを使用してパフォーマンスを向上させるために、モデル表に列を追加する機会が与えられます。friendly_id宝石を使用するときにslugsテーブルが必要ですか?

私のモデルテーブルにcached_slugsの列を使用していますが、slug tableが必要ですか?データは冗長になります。 slugsテーブルを削除しようとしましたが、データベースに新しいエントリを作成するときにエラーが発生しました。

答えて

2

friendly_idでスラッグを使用する場合は、slugsテーブルを使用する必要があります。 Friendly_id多くのナメクジは同じリソースを参照することができ、ナメクジはパーマリンクではなく、親しみやすい名前になります。 friendly_idよりligterを使いたい場合は、stringexを使うことをお勧めします。

https://github.com/rsl/stringex

しかし、いずれにせよ、cached_slugエントリを使用して高速で素晴らしい仕事とfreindly_id。

UPDATE:あなたはslug historyオプションを使用している場合を除き

friendly_id(4.0)の現在のバージョンはslugテーブルを必要としません。ここで利用可能

さらに詳しい情報:Example SetupHistory小見出し下http://rubydoc.info/github/norman/friendly_id/master/file/Guide.rdoc

ルック。

+0

別の方法で、フレグランスを渡すことなくfriendly_idを使うことができますuse_slug = false options ...しかしフレンドリーなidのほとんどの利点を失います – andrea

+0

あなたの返事のために! – daniel

+0

friendly_idに固有のスラッグ名を使用させる方法はありますか?それで、それは同じ名前の倍数を検証し、許さず、もはや--1と--2? –

関連する問題