Copy and paste this code into your terminal
DISCLAIMER: You should always review templates before running them. By running the template, you are agreeing to the terms of use.
The contents of this script as show. Any updates will be reflected in the below code and the snippet.
def ask_with_default(prompt, default) value = ask("#{prompt} [#{default}]") value.blank? ? default : value end gem 'friendly_id' run 'bundle install' while yes?("Do you want to use Friendly ID with a model?") do model_name = ask_with_default("Model Name:", "user") attribute_name = ask_with_default("Attribute Name:", "name") if model_name && attribute_name generate(:migration, "AddSlugTo#{model_name.titleize.pluralize}", "slug:uniq") string = <<~RUBY extend FriendlyId friendly_id :#{attribute_name}, use: :slugged RUBY inject_into_file "app/models/#{model_name}.rb", string, after: "class #{model_name.titleize} < ApplicationRecord\n" else puts "Model name and attribute required" end end generate(:friendly_id) puts "Change references. I.e., User.find() to User.friendly.find()"
A place where you can thank the author, post problems, give constructive feedback, etc. Be nice!