class Mongoid::Generators::RolifyGenerator
Public Instance Methods
generate_model()
click to toggle source
# File lib/generators/mongoid/rolify_generator.rb, line 11 def generate_model invoke "mongoid:model", [ name ] end
inject_role_class()
click to toggle source
# File lib/generators/mongoid/rolify_generator.rb, line 15 def inject_role_class inject_into_file(model_path, model_contents, :after => "include Mongoid::Document\n") end
model_contents()
click to toggle source
# File lib/generators/mongoid/rolify_generator.rb, line 31 def model_contents content = <<RUBY has_and_belongs_to_many :%{user_cname} belongs_to :resource, :polymorphic => true field :name, :type => String index({ :name => 1, :resource_type => 1, :resource_id => 1 }, { :unique => true}) validates :resource_type, :inclusion => { :in => Rolify.resource_types }, :allow_nil => true scopify RUBY content % { :user_cname => user_cname.constantize.collection_name } end
model_path()
click to toggle source
# File lib/generators/mongoid/rolify_generator.rb, line 27 def model_path File.join("app", "models", "#{file_path}.rb") end
role_reference()
click to toggle source
# File lib/generators/mongoid/rolify_generator.rb, line 23 def role_reference class_name.demodulize.underscore end
user_reference()
click to toggle source
# File lib/generators/mongoid/rolify_generator.rb, line 19 def user_reference user_cname.demodulize.underscore end