Articlesコントローラがあり、それぞれの記事を表示するために、基本的なルートexample.com/articles/4を使用します。
この URL 形式をexample.com/4-article-nameまたはexample.com/article-name-4に変更したいと思います。
誰かヒントを教えてください。
ありがとう
Articlesコントローラがあり、それぞれの記事を表示するために、基本的なルートexample.com/articles/4を使用します。
この URL 形式をexample.com/4-article-nameまたはexample.com/article-name-4に変更したいと思います。
誰かヒントを教えてください。
ありがとう
Ryan Bates(Railscast.com) は、あなたの問題を解決するエピソードを書いたようです:
/app/models/article.rb
class Article < ActiveRecord::Base
def to_param
"#{id} #{name}".parameterize
end
end
参照: http://railscasts.com/episodes/314-pretty-urls-with-friendlyid?view=asciicast
一般に、最初の数字は最もエレガントな方法です。なぜなら、Ruby では非常に簡単に整数に変換できるからです。たとえば、'123-foo-bar'.to_i
が返されます123
。このメカニズムを変更する方法については、http://apidock.com/rails/ActiveRecord/Base/to_paramを参照してください。