wycats / merb-more

Merb More: The Full Stack. Take what you need; leave what you don't.

This URL has Read+Write access

merb-more / merb-gen / lib / generators / resource.rb
100644 33 lines (22 sloc) 0.784 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
module Merb::Generators
  
  class ResourceGenerator < Generator
    
    desc <<-DESC
Generates a new resource.
DESC
    
    first_argument :name, :required => true, :desc => "resource name (singular)"
    second_argument :attributes, :as => :hash, :default => {}, :desc => "space separated resource model properties in form of name:type. Example: state:string"
    
    invoke :model do |generator|
      generator.new(destination_root, options, model_name, attributes)
    end
    
    invoke :resource_controller do |generator|
      generator.new(destination_root, options, controller_name, attributes)
    end
    
    def controller_name
      name.pluralize
    end
    
    def model_name
      name
    end
    
  end
  
  add :resource, ResourceGenerator
  
end