rails_app_generator 0.2.35 → 0.2.38

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +21 -0
  3. data/after_templates/addons/avo/_.rb +36 -24
  4. data/after_templates/addons/avo/app/avo/dashboards/dashboard.rb +12 -0
  5. data/after_templates/addons/avo/app/avo/resources/category_resource.rb +27 -0
  6. data/after_templates/addons/avo/app/avo/resources/post_resource.rb +25 -0
  7. data/after_templates/addons/avo/app/avo/resources/user_resource.rb +23 -0
  8. data/after_templates/addons/avo/app/controllers/home_controller.rb +4 -0
  9. data/after_templates/addons/avo/app/models/category.rb +7 -0
  10. data/after_templates/addons/avo/app/models/post.rb +9 -0
  11. data/after_templates/addons/avo/app/views/home/index.html.erb +1 -1
  12. data/after_templates/addons/avo/app/views/home/quick_signin.html.erb +3 -0
  13. data/after_templates/addons/avo/app/views/layouts/_footer.html.erb +0 -3
  14. data/after_templates/addons/avo/app/views/layouts/_navbar.html.erb +13 -8
  15. data/after_templates/addons/avo/app/views/layouts/application.html.erb +15 -2
  16. data/after_templates/addons/avo/config/initializers/avo.rb +105 -0
  17. data/after_templates/addons/avo/config/locales/en.yml +4 -0
  18. data/after_templates/addons/avo/db/seeds.rb +69 -12
  19. data/after_templates/addons/friendly_id/_.rb +68 -0
  20. data/after_templates/addons/friendly_id/app/controllers/home_controller.rb +5 -0
  21. data/after_templates/addons/friendly_id/app/controllers/posts_controller.rb +66 -0
  22. data/after_templates/addons/friendly_id/app/models/post.rb +16 -0
  23. data/after_templates/addons/friendly_id/app/views/home/index.html.erb +22 -0
  24. data/after_templates/addons/friendly_id/app/views/layouts/_footer.html.erb +0 -0
  25. data/after_templates/addons/friendly_id/app/views/layouts/_navbar.html.erb +3 -0
  26. data/after_templates/addons/friendly_id/app/views/layouts/application.html.erb +29 -0
  27. data/after_templates/addons/friendly_id/app/views/posts/show.html.erb +19 -0
  28. data/after_templates/addons/friendly_id/db/seeds.rb +47 -0
  29. data/docs/last_run/app_generator_class.json +25 -1
  30. data/docs/last_run/app_generator_data.json +9 -6
  31. data/docs/last_run/rails_options_class.json +25 -1
  32. data/docs/last_run/rails_options_data.json +9 -6
  33. data/lib/rails_app_generator/addons/avo.rb +8 -0
  34. data/lib/rails_app_generator/addons/friendly_id.rb +16 -0
  35. data/lib/rails_app_generator/addons/ransack.rb +34 -0
  36. data/lib/rails_app_generator/app_generator.rb +9 -1
  37. data/lib/rails_app_generator/rag_initializer.rb +2 -1
  38. data/lib/rails_app_generator/version.rb +1 -1
  39. data/package-lock.json +2 -2
  40. data/package.json +1 -1
  41. data/profiles/addons/avo.json +4 -2
  42. data/profiles/addons/friendly_id.json +14 -0
  43. data/templates/thor_task/profile/app/views/layouts/_navbar.html.erb +3 -3
  44. metadata +24 -2
@@ -0,0 +1,16 @@
1
+ class Post < ApplicationRecord
2
+ extend FriendlyId
3
+
4
+ # friendly_id :title, use: :slugged
5
+
6
+ friendly_id :title_fallbacks, use: :slugged
7
+
8
+ private
9
+
10
+ def title_fallbacks
11
+ [
12
+ :title,
13
+ [:title, :category]
14
+ ]
15
+ end
16
+ end
@@ -0,0 +1,22 @@
1
+ <h1>Friendly</h1>
2
+
3
+ <p>FriendlyId provides slugging and permalink support for Active Record. It lets you create pretty URLs and work with human-friendly strings as if they were numeric ids.</p>
4
+
5
+ <table>
6
+ <thead>
7
+ <tr>
8
+ <td>Title</td>
9
+ <td style='width: 100px;'>Category</td>
10
+ <td>Friendly URL</td>
11
+ </tr>
12
+ </thead>
13
+ <tbody>
14
+ <% @posts.each do |post| %>
15
+ <tr>
16
+ <td><%= post.title %></td>
17
+ <td style='width: 100px;'><%= post.category %></td>
18
+ <td><%= link_to post.slug, post %></td>
19
+ </tr>
20
+ <% end %>
21
+ </tbody>
22
+ </table>
@@ -0,0 +1,3 @@
1
+ <%= link_to 'Home', root_path %>
2
+ | <%= link_to 'Posts', posts_path %>
3
+ <hr />
@@ -0,0 +1,29 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title><%= camelized %></title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <%%= csrf_meta_tags %>
7
+ <%%= csp_meta_tag %>
8
+
9
+ <%- if options[:skip_hotwire] || options[:skip_javascript] -%>
10
+ <%%= stylesheet_link_tag "application" %>
11
+ <%- else -%>
12
+ <%%= stylesheet_link_tag "application", "data-turbo-track": "reload" %>
13
+ <%- end -%>
14
+ </head>
15
+
16
+ <body>
17
+ <header>
18
+ <%%= render 'layouts/navbar' %>
19
+ <hr />
20
+ </header>
21
+ <main>
22
+ <%%= yield %>
23
+ </main>
24
+ <footer>
25
+ <%%= render 'layouts/footer' %>
26
+ </footer>
27
+ </body>
28
+ </html>
29
+
@@ -0,0 +1,19 @@
1
+ <% if @friendly %>
2
+
3
+ <h1><%= @post.title %></h1>
4
+ <p><%= @post.body %></p>
5
+
6
+ <% else %>
7
+
8
+ <p style="color: green"><%= notice %></p>
9
+
10
+ <%= render @post %>
11
+
12
+ <div>
13
+ <%= link_to "Edit this post", edit_post_path(@post) %> |
14
+ <%= link_to "Back to posts", posts_path %>
15
+
16
+ <%= button_to "Destroy this post", @post, method: :delete %>
17
+ </div>
18
+
19
+ <% end %>
@@ -0,0 +1,47 @@
1
+ posts = [
2
+ 'can ruby on rails run on windows',
3
+ 'can ruby on rails be used for mobile apps',
4
+ 'does ruby on rails have a future',
5
+ 'what does ruby on rails do',
6
+ 'how does ruby on rails work',
7
+ 'what is rails ruby',
8
+ 'where ruby on rails',
9
+ 'what ruby on rails is used for',
10
+ 'where ruby on rails active record',
11
+ 'where ruby on rails performance',
12
+ 'which companies use ruby on rails',
13
+ 'what is ruby on rails developer',
14
+ 'who created ruby on rails',
15
+ 'what is ruby on rails good for',
16
+ 'is ruby on rails worth learning',
17
+ 'is ruby on rails hard to learn',
18
+ 'is ruby on rails backend or frontend',
19
+ 'is ruby on rails a programming language',
20
+ 'is ruby on rails easy to learn',
21
+ 'who uses ruby on rails',
22
+ 'who created ruby on rails',
23
+ 'is ruby rails dead',
24
+ 'what is rails ruby',
25
+ 'when to use ruby on rails',
26
+ 'why ruby on rails is good',
27
+ 'where ruby on rails is used',
28
+ 'where ruby on rails',
29
+ 'where ruby on rails active record',
30
+ 'where ruby on rails performance',
31
+ 'query where ruby on rails'
32
+ ]
33
+
34
+ categories = [
35
+ 'ruby',
36
+ 'rails',
37
+ 'ruby on rails',
38
+ 'ror',
39
+ 'rails 7',
40
+ 'full stack',
41
+ 'web',
42
+ 'web app'
43
+ ]
44
+
45
+ posts.each do |post|
46
+ Post.create(title: post.capitalize, category: categories.sample, body: Faker::Lorem.paragraphs(number: 20).join(' '))
47
+ end
@@ -53,10 +53,12 @@
53
53
  "add_devise_masquerade",
54
54
  "add_dotenv",
55
55
  "add_faker",
56
+ "add_friendly_id",
56
57
  "add_groupdate",
57
58
  "add_hexapdf",
58
59
  "add_httparty",
59
60
  "add_honeybadger",
61
+ "add_image_processing",
60
62
  "add_kaminari",
61
63
  "add_lograge",
62
64
  "add_minimal_css",
@@ -67,6 +69,7 @@
67
69
  "add_pretender",
68
70
  "add_public_suffix",
69
71
  "add_rails_html_sanitizer",
72
+ "add_ransack",
70
73
  "add_redcarpet",
71
74
  "add_rolify",
72
75
  "add_rubocop",
@@ -119,7 +122,7 @@
119
122
  "name": "ruby",
120
123
  "description": "Path to the Ruby binary of your choice",
121
124
  "type": "string",
122
- "default": "/Users/davidcruwys/.asdf/installs/ruby/2.7.6/bin/ruby",
125
+ "default": "/Users/davidcruwys/.asdf/installs/ruby/3.1.1/bin/ruby",
123
126
  "required": false
124
127
  },
125
128
  {
@@ -444,6 +447,13 @@
444
447
  "default": false,
445
448
  "required": false
446
449
  },
450
+ {
451
+ "name": "add_friendly_id",
452
+ "description": "Indicates when to generate add friendly",
453
+ "type": "boolean",
454
+ "default": false,
455
+ "required": false
456
+ },
447
457
  {
448
458
  "name": "add_groupdate",
449
459
  "description": "Indicates when to generate add groupdate",
@@ -472,6 +482,13 @@
472
482
  "default": false,
473
483
  "required": false
474
484
  },
485
+ {
486
+ "name": "add_image_processing",
487
+ "description": "Indicates when to generate add image processing",
488
+ "type": "boolean",
489
+ "default": false,
490
+ "required": false
491
+ },
475
492
  {
476
493
  "name": "add_kaminari",
477
494
  "description": "Indicates when to generate add kaminari",
@@ -542,6 +559,13 @@
542
559
  "default": false,
543
560
  "required": false
544
561
  },
562
+ {
563
+ "name": "add_ransack",
564
+ "description": "Indicates when to generate add ransack",
565
+ "type": "boolean",
566
+ "default": false,
567
+ "required": false
568
+ },
545
569
  {
546
570
  "name": "add_redcarpet",
547
571
  "description": "Indicates when to generate add redcarpet",
@@ -2,7 +2,7 @@
2
2
  "options": {
3
3
  "skip_namespace": false,
4
4
  "skip_collision_check": false,
5
- "ruby": "/Users/davidcruwys/.asdf/installs/ruby/2.7.6/bin/ruby",
5
+ "ruby": "/Users/davidcruwys/.asdf/installs/ruby/3.1.1/bin/ruby",
6
6
  "database": "sqlite3",
7
7
  "skip_git": true,
8
8
  "skip_keeps": false,
@@ -32,21 +32,23 @@
32
32
  "test": "rspec",
33
33
  "add_acts_as_list": false,
34
34
  "add_administrate": false,
35
- "add_annotate": true,
36
- "add_avo": true,
35
+ "add_annotate": false,
36
+ "add_avo": false,
37
37
  "add_bcrypt": false,
38
38
  "add_brakeman": false,
39
39
  "add_browser": false,
40
40
  "add_bundler_audit": false,
41
41
  "add_chartkick": false,
42
- "add_devise": true,
42
+ "add_devise": false,
43
43
  "add_devise_masquerade": false,
44
44
  "add_dotenv": false,
45
45
  "add_faker": true,
46
+ "add_friendly_id": true,
46
47
  "add_groupdate": false,
47
48
  "add_hexapdf": false,
48
49
  "add_httparty": false,
49
50
  "add_honeybadger": false,
51
+ "add_image_processing": false,
50
52
  "add_kaminari": false,
51
53
  "add_lograge": false,
52
54
  "add_minimal_css": true,
@@ -57,10 +59,11 @@
57
59
  "add_pretender": false,
58
60
  "add_public_suffix": false,
59
61
  "add_rails_html_sanitizer": false,
62
+ "add_ransack": false,
60
63
  "add_redcarpet": false,
61
64
  "add_rolify": false,
62
- "add_rubocop": true,
65
+ "add_rubocop": false,
63
66
  "add_twilio_ruby": false,
64
- "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/addons/avo/_.rb"
67
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/addons/friendly_id/_.rb"
65
68
  }
66
69
  }
@@ -53,10 +53,12 @@
53
53
  "add_devise_masquerade",
54
54
  "add_dotenv",
55
55
  "add_faker",
56
+ "add_friendly_id",
56
57
  "add_groupdate",
57
58
  "add_hexapdf",
58
59
  "add_httparty",
59
60
  "add_honeybadger",
61
+ "add_image_processing",
60
62
  "add_kaminari",
61
63
  "add_lograge",
62
64
  "add_minimal_css",
@@ -67,6 +69,7 @@
67
69
  "add_pretender",
68
70
  "add_public_suffix",
69
71
  "add_rails_html_sanitizer",
72
+ "add_ransack",
70
73
  "add_redcarpet",
71
74
  "add_rolify",
72
75
  "add_rubocop",
@@ -119,7 +122,7 @@
119
122
  "name": "ruby",
120
123
  "description": "Path to the Ruby binary of your choice",
121
124
  "type": "string",
122
- "default": "/Users/davidcruwys/.asdf/installs/ruby/2.7.6/bin/ruby",
125
+ "default": "/Users/davidcruwys/.asdf/installs/ruby/3.1.1/bin/ruby",
123
126
  "required": false
124
127
  },
125
128
  {
@@ -444,6 +447,13 @@
444
447
  "default": false,
445
448
  "required": false
446
449
  },
450
+ {
451
+ "name": "add_friendly_id",
452
+ "description": "",
453
+ "type": "boolean",
454
+ "default": false,
455
+ "required": false
456
+ },
447
457
  {
448
458
  "name": "add_groupdate",
449
459
  "description": "",
@@ -472,6 +482,13 @@
472
482
  "default": false,
473
483
  "required": false
474
484
  },
485
+ {
486
+ "name": "add_image_processing",
487
+ "description": "",
488
+ "type": "boolean",
489
+ "default": false,
490
+ "required": false
491
+ },
475
492
  {
476
493
  "name": "add_kaminari",
477
494
  "description": "",
@@ -542,6 +559,13 @@
542
559
  "default": false,
543
560
  "required": false
544
561
  },
562
+ {
563
+ "name": "add_ransack",
564
+ "description": "",
565
+ "type": "boolean",
566
+ "default": false,
567
+ "required": false
568
+ },
545
569
  {
546
570
  "name": "add_redcarpet",
547
571
  "description": "",
@@ -6,8 +6,8 @@
6
6
  "pretend": false,
7
7
  "quiet": false,
8
8
  "skip": false,
9
- "ruby": "/Users/davidcruwys/.asdf/installs/ruby/2.7.6/bin/ruby",
10
- "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/addons/avo/_.rb",
9
+ "ruby": "/Users/davidcruwys/.asdf/installs/ruby/3.1.1/bin/ruby",
10
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/addons/friendly_id/_.rb",
11
11
  "database": "sqlite3",
12
12
  "skip_git": true,
13
13
  "skip_keeps": false,
@@ -42,21 +42,23 @@
42
42
  "test": "rspec",
43
43
  "add_acts_as_list": false,
44
44
  "add_administrate": false,
45
- "add_annotate": true,
46
- "add_avo": true,
45
+ "add_annotate": false,
46
+ "add_avo": false,
47
47
  "add_bcrypt": false,
48
48
  "add_brakeman": false,
49
49
  "add_browser": false,
50
50
  "add_bundler_audit": false,
51
51
  "add_chartkick": false,
52
- "add_devise": true,
52
+ "add_devise": false,
53
53
  "add_devise_masquerade": false,
54
54
  "add_dotenv": false,
55
55
  "add_faker": true,
56
+ "add_friendly_id": true,
56
57
  "add_groupdate": false,
57
58
  "add_hexapdf": false,
58
59
  "add_httparty": false,
59
60
  "add_honeybadger": false,
61
+ "add_image_processing": false,
60
62
  "add_kaminari": false,
61
63
  "add_lograge": false,
62
64
  "add_minimal_css": true,
@@ -67,9 +69,10 @@
67
69
  "add_pretender": false,
68
70
  "add_public_suffix": false,
69
71
  "add_rails_html_sanitizer": false,
72
+ "add_ransack": false,
70
73
  "add_redcarpet": false,
71
74
  "add_rolify": false,
72
- "add_rubocop": true,
75
+ "add_rubocop": false,
73
76
  "add_twilio_ruby": false
74
77
  }
75
78
  }
@@ -9,6 +9,14 @@ module RailsAppGenerator
9
9
 
10
10
  def apply
11
11
  # copy_file 'config/initializers/avo.rb'
12
+
13
+ generate('avo:install')
14
+
15
+ gsub_file 'config/routes.rb', %(mount Avo::Engine, at: Avo.configuration.root_path), <<-RUBY
16
+ authenticate :user do
17
+ mount Avo::Engine, at: Avo.configuration.root_path
18
+ end
19
+ RUBY
12
20
  end
13
21
 
14
22
  def before_template
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RailsAppGenerator
4
+ # Custom add-ons for RailsAppGenerator
5
+ module AddOns
6
+ # Add FriendlyId to rails application
7
+ class FriendlyId < RailsAppGenerator::Addon
8
+ required_gem gem.version('friendly_id', '5.4.2', 'FriendlyId provides slugging and permalink support for Active Record.')
9
+
10
+ def apply
11
+ bundle_install
12
+ generate('friendly_id')
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,34 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RailsAppGenerator
4
+ # Custom add-ons for RailsAppGenerator
5
+ module AddOns
6
+ # Add Ransack to rails application
7
+ class Ransack < RailsAppGenerator::Addon
8
+ required_gem gem.version('ransack', '3.2.1', 'Object-based searching.')
9
+
10
+ def apply
11
+ say 'Setting up Ransack'
12
+ # template('ransack_template.rb', 'target/ransack.rb', force: true)
13
+ # template('app/javascript/stylesheets/components.scss')
14
+ # create_file('target/ransack.rb', 'put your content here')
15
+ # directory 'app/template', 'app/target', force: true
16
+ # empty_directory 'app/target'
17
+ # inject_into_file('app/application.js', "some content")
18
+ # rails_command('tailwindcss:install')
19
+ end
20
+
21
+ def before_template
22
+ say 'Setting up Ransack - before custom template'
23
+ end
24
+
25
+ def before_bundle
26
+ say 'Setting up Ransack - before bundle install'
27
+ end
28
+
29
+ def after_bundle
30
+ say 'Setting up Ransack - after bundle install'
31
+ end
32
+ end
33
+ end
34
+ end
@@ -167,6 +167,7 @@ module RailsAppGenerator
167
167
  def finish_template
168
168
  puts 'finish template'
169
169
 
170
+ # https://github.com/AaronLasseigne/active_interaction
170
171
  add_if(:acts_as_list) # tested
171
172
  add_if(:administrate) # tested
172
173
  add_if(:annotate) # tested
@@ -184,13 +185,15 @@ module RailsAppGenerator
184
185
  add_if(:dotenv) # tested
185
186
  add_if(:factory_bot) # TODO: needs testing
186
187
  add_if(:faker) # tested
188
+ add_if(:friendly_id) # tested
187
189
  add_if(:generators) # TODO: needs testing
188
190
  add_if(:groupdate) # TODO: does not have a profile
189
191
  add_if(:hexapdf) # tested
190
192
  add_if(:httparty) # tested
191
193
  add_if(:high_voltage) # TODO: needs testing
192
194
  add_if(:honeybadger) # tested
193
- add_if(:image_processing) # tested
195
+ add_if(:image_processing) # TODO: needs testing
196
+ # https://github.com/collectiveidea/interactor
194
197
  add_if(:kaminari) # tested
195
198
  add_if(:lograge) # tested
196
199
  add_if(:minimal_css) # tested (this is NOT a GEM)
@@ -207,6 +210,7 @@ module RailsAppGenerator
207
210
  add_if(:services) # TODO: needs testing
208
211
  add_if(:shoulda) # TODO: needs testing
209
212
  add_if(:sidekiq) # TODO: needs testing
213
+ add_if(:ransack) # TODO: needs testing
210
214
  add_if(:rubocop) # tested
211
215
  add_if(:twilio_ruby) # tested
212
216
  add(:views, :errors, :scaffold) if active?(:views)
@@ -270,6 +274,10 @@ module RailsAppGenerator
270
274
  generate(:scaffold, name, *args)
271
275
  end
272
276
 
277
+ def add_scaffold_controller(name, *args)
278
+ generate(:scaffold_controller, name, *args)
279
+ end
280
+
273
281
  def add_migration(name, *args)
274
282
  generate(:migration, name, *args)
275
283
  end
@@ -119,6 +119,7 @@ KConfig.configure do |config|
119
119
  rag.add_option :add_dotenv , type: :boolean, default: false
120
120
  # factory_bot
121
121
  rag.add_option :add_faker , type: :boolean, default: false
122
+ rag.add_option :add_friendly_id , type: :boolean, default: false
122
123
  # generators
123
124
  rag.add_option :add_groupdate , type: :boolean, default: false
124
125
  rag.add_option :add_hexapdf , type: :boolean, default: false
@@ -138,7 +139,7 @@ KConfig.configure do |config|
138
139
  # pundit
139
140
  rag.add_option :add_rails_html_sanitizer , type: :boolean, default: false
140
141
  # rails_app_generator
141
- # RANSACK
142
+ rag.add_option :add_ransack , type: :boolean, default: false
142
143
  rag.add_option :add_redcarpet , type: :boolean, default: false
143
144
  rag.add_option :add_rolify , type: :boolean, default: false
144
145
  # services
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RailsAppGenerator
4
- VERSION = '0.2.35'
4
+ VERSION = '0.2.38'
5
5
  end
data/package-lock.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "rails_app_generator",
3
- "version": "0.2.35",
3
+ "version": "0.2.38",
4
4
  "lockfileVersion": 2,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "rails_app_generator",
9
- "version": "0.2.35",
9
+ "version": "0.2.38",
10
10
  "dependencies": {
11
11
  "daisyui": "^2.20.0"
12
12
  },
data/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rails_app_generator",
3
- "version": "0.2.35",
3
+ "version": "0.2.38",
4
4
  "description": "Create new Rails Application with custom opinions",
5
5
  "scripts": {
6
6
  "release": "semantic-release"
@@ -6,12 +6,14 @@
6
6
  "opts": {
7
7
  "skip_git": true,
8
8
  "skip_test": true,
9
+ "add_minimal_css": true,
9
10
  "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/addons/avo/_.rb",
10
11
  "add_annotate": true,
11
12
  "add_avo": true,
12
13
  "add_devise": true,
13
14
  "add_faker": true,
14
- "add_rubocop": true,
15
- "add_minimal_css": true
15
+ "add_image_processing": true,
16
+ "add_ransack": true,
17
+ "add_rubocop": true
16
18
  }
17
19
  }
@@ -0,0 +1,14 @@
1
+ {
2
+ "args": {
3
+ "app_path": "r7_friendly_id",
4
+ "destination_root": "/Users/davidcruwys/dev/kgems/rails_app_generator/a/addons"
5
+ },
6
+ "opts": {
7
+ "skip_git": true,
8
+ "skip_test": true,
9
+ "add_minimal_css": true,
10
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/addons/friendly_id/_.rb",
11
+ "add_faker": true,
12
+ "add_friendly_id": true
13
+ }
14
+ }
@@ -1,5 +1,5 @@
1
1
  <%= link_to 'Home', root_path %>
2
- <%# link_to 'Products', products_path %>
3
- <%# link_to 'Posts', posts_path %>
4
- <%# link_to 'People', people_path %>
2
+ | <%= link_to 'Products', products_path %>
3
+ | <%= link_to 'Posts', posts_path %>
4
+ | <%= link_to 'People', people_path %>
5
5
  <hr />