Gem FRIENDLY

Dưới đây là bài chia sẻ về gem friendly, mình sẽ nêu các bước demo, các bạn hãy thử nghiệm nó nhé:

rails new app
rails g scaffold post title:string content:string
rake db:migrate

Thêm vào Gemfile:

gem 'friendly_id', '~> 5.1.0'

Rồi vào console

bundle rails generate friendly_id rails g migration add_slug_to_posts slug:string:uniq rake db:migrate

** model/post.rb: **

class Post < ApplicationRecord
extend FriendlyId
friendly_id :title, use: :slugged
end

POST_CONTROLLER

def set_post
@post = Post.friendly.find(params[:id])
end

def post_params
params.require(:post).permit(:title, :content, :slug)
end

rails c Post.find_each(&:save) -> quit

Rồi rails s kiểm tra kết quả nhé

Tham khảo từ: https://github.com/norman/friendly_id