Sha256: 389e05a76c6089b0c1395566df15518f5ff23e5d6b001c8d967004ff1a60322a
Contents?: true
Size: 1.97 KB
Versions: 2
Compression:
Stored size: 1.97 KB
Contents
require 'rails/generators' require 'rails/generators/migration' module PrivateMessages module Generators class ModelGenerator < Rails::Generators::Base include Rails::Generators::Migration desc "Creates the private message model." argument :user_model_name, :required => false, :default => "User", :desc => "The user model name" argument :message_model_name, :required => false, :default => "Message", :desc => "The message model name" attr_reader :singular_camel_case_name, :plural_camel_case_name, :singular_lower_case_name, :plural_lower_case_name attr_reader :singular_camel_case_parent, :plural_camel_case_parent, :singular_lower_case_parent, :plural_lower_case_parent def self.source_root File.join(File.dirname(__FILE__), 'templates') end # Implement the required interface for Rails::Generators::Migration. # taken from http://github.com/rails/rails/blob/master/activerecord/lib/generators/active_record.rb def self.next_migration_number(dirname) #:nodoc: if ActiveRecord::Base.timestamped_migrations Time.now.utc.strftime("%Y%m%d%H%M%S") else "%.3d" % (current_migration_number(dirname) + 1) end end def go @singular_camel_case_name = message_model_name.singularize.camelize @plural_camel_case_name = message_model_name.pluralize.camelize @singular_lower_case_name = message_model_name.singularize.underscore @plural_lower_case_name = message_model_name.pluralize.underscore @singular_camel_case_parent = user_model_name.singularize.camelize @plural_camel_case_parent = user_model_name.pluralize.camelize @singular_lower_case_parent = user_model_name.singularize.underscore @plural_lower_case_parent = user_model_name.pluralize.underscore #directory "app/models" template "model.rb", "app/models/#{singular_lower_case_name}.rb" migration_template "migration.rb", "db/migrate/create_#{plural_lower_case_name}", :assigns => { :migration_name => "Create#{plural_camel_case_name}" } end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
user_private_messages-1.0.1 | lib/generators/user_private_messages/model/model_generator.rb |
user_private_messages-1.0.0 | lib/generators/simple_private_messages/model/model_generator.rb |