Sha256: 355a984777e38644c91568a92d3a1788f3b54e073373ad0f297892aef0a76bb3
Contents?: true
Size: 1.66 KB
Versions: 2
Compression:
Stored size: 1.66 KB
Contents
module CodeigniterScaffold module Command class Scaffold attr_accessor :model, :attributes def run(args) return Kernel.puts("Some arguments are needed, please, try again.") if not valid?(args) parse(args) create("controller.php","application/controllers/#{@model.downcase}.php") create("model.php","application/models/#{@model.downcase}_model.php") create("migration.sql","application/migrations/create_#{@model.downcase}.sql") mkdir ("application/views/#{@model.downcase}") create("view_create.php","application/views/#{@model.downcase}/create.php") create("view_index.php","application/views/#{@model.downcase}/index.php") end protected def valid?(args) return false if not args or args.empty? return false if args.size <= 1 true end def parse(args) @model = args.shift.capitalize @attributes = Array.new args.each {|a| @attributes << Attribute.new(a) } end private def create(template, output) parse_to(template, output) puts "File #{output} was successfully created." end def parse_to(path_to_template, path_to_output) resource_dir = File.dirname(__FILE__) + "/../../resources/" @template = File.read(File.join(resource_dir, path_to_template)) template = ERB.new(@template) file = File.new(path_to_output,"w") file.write(template.result(binding)) file.close end def mkdir(directory_name) begin Dir::mkdir(directory_name) rescue # directory exists end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
codeigniter-scaffold-0.0.2 | lib/codeigniter_scaffold/command/scaffold.rb |
codeigniter-scaffold-0.0.1 | lib/codeigniter_scaffold/command/scaffold.rb |