Class: Jt::Generators::ScaffoldGenerator
- Defined in:
- lib/generators/jt/scaffold/scaffold_generator.rb
Instance Method Summary collapse
- #create_domain_list_page ⇒ Object
- #create_domain_page ⇒ Object
- #define_go_to_page ⇒ Object
-
#initialize(*args, &block) ⇒ ScaffoldGenerator
constructor
A new instance of ScaffoldGenerator.
- #link_page ⇒ Object
- #template_root ⇒ Object
Methods inherited from Base
Constructor Details
#initialize(*args, &block) ⇒ ScaffoldGenerator
Returns a new instance of ScaffoldGenerator.
11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/generators/jt/scaffold/scaffold_generator.rb', line 11 def initialize(*args, &block) super print_usage unless scaffold_name.underscore =~ /^[a-z][a-z0-9_\/]+$/ @model_attributes = [] args_for_c_m.each do |arg| if arg.include?(':') @model_attributes << Rails::Generators::GeneratedAttribute.new(*arg.split(':')) end end puts @model_attributes end |
Instance Method Details
#create_domain_list_page ⇒ Object
43 44 45 46 47 |
# File 'lib/generators/jt/scaffold/scaffold_generator.rb', line 43 def create_domain_list_page content = File.read "#{template_root}/_list_page.haml" content = content.gsub "@{scaffold_name}", scaffold_name create_file "public/mobile/_#{scaffold_name}_list_page.haml", content end |
#create_domain_page ⇒ Object
35 36 37 38 39 40 41 |
# File 'lib/generators/jt/scaffold/scaffold_generator.rb', line 35 def create_domain_page content = File.read "#{template_root}/_page.haml" content = content.gsub "@{scaffold_name}", scaffold_name @model_attributes.map { |a| content +="\n = text_input name:\"#{a.name}\"" } create_file "public/mobile/_#{scaffold_name}_page.haml", content end |
#define_go_to_page ⇒ Object
49 50 51 |
# File 'lib/generators/jt/scaffold/scaffold_generator.rb', line 49 def define_go_to_page insert_into_file "public/mobile/js/pages.js", "__define_go_to_page([\"#{scaffold_name}\", \"#{scaffold_name}_list\"])", {:after => "// pages"} end |
#link_page ⇒ Object
30 31 32 33 |
# File 'lib/generators/jt/scaffold/scaffold_generator.rb', line 30 def link_page insert_into_file "public/mobile/_pages.haml", "\n=render '#{scaffold_name}_page'", {:after => "// pages"} insert_into_file "public/mobile/_pages.haml", "\n=render '#{scaffold_name}_list_page'", {:after => "// pages"} end |
#template_root ⇒ Object
26 27 28 |
# File 'lib/generators/jt/scaffold/scaffold_generator.rb', line 26 def template_root @_template_root ||= File.('../templates', __FILE__) end |