NAME
Ado::Command::generate::adoplugin - Generates an Ado::Plugin
SYNOPSIS
On the command-line:
$ cd ~/opt/public_dev
# Ado is "globally" installed for the current perlbrew Perl
$ ado generate adoplugin --name MyBlog
$ ado generate adoplugin --name MyBlog --crud -t 'articles,news'
Programmatically:
use Ado::Command::generate::adoplugin;
my $vhost = Ado::Command::generate::adoplugin->new;
$vhost->run(-n => 'MyBlog', -c => 1, -t => 'articles,news');
DESCRIPTION
Ado::Command::generate::adoplugin generates directory structures for fully functional Ado-specific plugins with optional MVC set of files in the newly created plugin directory. The new plugin is generated in the current directory.
This is a core command, that means it is always enabled and its code a more complex example for learning to build new commands. You're welcome to fork it.
OPTIONS
Below are the options this command accepts, described in Getopt::Long notation.
n|name=s
Mandatory. String. The name of the plugin. The resulting full class name is the camelized version of Ado::Plugin::$$args{name}
.
c|crud
Boolean. When set you can pass in addition all the arguments accepted by Ado::Command::generate::crud. It is mandatory to pass at least the --tables
option so the controllers can be generated.
When generating a plugin: --controller_namespace
defaults to app->routes->namespaces->[0]
; --home_dir
defaults to the plugin base directory; --lib
defaults to lib
in the plugin base directory; --model_namespace
defaults to Ado::Model; --templates_root
defaults to templates
in the plugin base directory.
ATTRIBUTES
Ado::Command::generate::adoplugin inherits all attributes from Ado::Command::generate and implements the following new ones.
crud
#returns $self.
$self->crud(Ado::Command::generate::crud->new(app => $self->app))
#returns Ado::Command::generate::crud instance.
my $crud = $self->crud->run(%options);
An instance of Ado::Command::generate::crud. Used by Ado::Command::generate::adoplugin to generate routes for controllers and possibly others.
description
my $description = $command->description;
$command = $command->description('Foo!');
Short description of this command, used for the command list.
usage
my $usage = $command->usage;
$command = $command->usage('Foo!');
Usage information for this command, used for the help screen.
METHODS
Ado::Command::generate::adoplugin inherits all methods from Ado::Command and implements the following new ones.
run
$plugin->run(@ARGV);
Run this command.
SEE ALSO
Mojolicious::Command::generate::plugin, Ado::Command::generate::crud, Ado::Command::generate::apache2vhost, Ado::Command::generate::apache2htaccess, Ado::Command::generate, Mojolicious::Command::generate, Getopt::Long, Ado::Command Ado::Manual, Mojolicious, "DEPLOYMENT" in Mojolicious::Guides::Cookbook
AUTHOR
Красимир Беров (Krasimir Berov)
COPYRIGHT AND LICENSE
Copyright 2014 Красимир Беров (Krasimir Berov).
This program is free software, you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License v3 (LGPL-3.0). You may copy, distribute and modify the software provided that modifications are open source. However, software that includes the license may release under a different license.
See http://opensource.org/licenses/lgpl-3.0.html for more information.