From 803ef7a08b400ace8ed2ebdd476317bf0a123b8c Mon Sep 17 00:00:00 2001 From: Matthias Loker Date: Tue, 4 Aug 2015 18:40:13 +0200 Subject: [PATCH] Allow namespaced model generation --- Gemfile.lock | 5 ++++- lib/generators/foxinator/scaffold/model_generator.rb | 3 ++- lib/generators/foxinator/scaffold/templates/migration.rb | 4 ++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 5b8e8d7..7f50762 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: . specs: - foxinator-generator (0.0.18) + foxinator-generator (0.0.19) bootstrap-kaminari-views (~> 0.0.5) devise (~> 3.4.1) inherited_resources (~> 1.6.0) @@ -162,3 +162,6 @@ DEPENDENCIES rdoc (~> 3.12) shoulda simplecov + +BUNDLED WITH + 1.10.2 diff --git a/lib/generators/foxinator/scaffold/model_generator.rb b/lib/generators/foxinator/scaffold/model_generator.rb index b14b5f7..1605971 100644 --- a/lib/generators/foxinator/scaffold/model_generator.rb +++ b/lib/generators/foxinator/scaffold/model_generator.rb @@ -27,7 +27,8 @@ def self.next_migration_number(dirname) end def create_model - migration_template 'migration.rb', "db/migrate/create_#{file_name.pluralize}.rb" + table_name = class_name.tableize.parameterize('_') + migration_template 'migration.rb', "db/migrate/create_#{table_name}.rb" template 'model.rb', "app/models/#{file_name.singularize}.rb" end end diff --git a/lib/generators/foxinator/scaffold/templates/migration.rb b/lib/generators/foxinator/scaffold/templates/migration.rb index ee48d42..8b7aab0 100644 --- a/lib/generators/foxinator/scaffold/templates/migration.rb +++ b/lib/generators/foxinator/scaffold/templates/migration.rb @@ -1,7 +1,7 @@ -class Create<%= class_name.pluralize %> < ActiveRecord::Migration +class Create<%= class_name.gsub('::','').pluralize %> < ActiveRecord::Migration def change - create_table :<%= file_name.pluralize %> do |t| + create_table :<%= table_name %> do |t| <%- model_attrs.each do |attr| -%> t.<%= attr.type %> :<%= attr.name %> <%- end -%>