Pylons создает новые контроллеры и проекты, добавляя команду для вставки. Команды определены в setup.py, и вы можете добавлять новые команды.
Например (это взято из Paste docs ), давайте предположим, что у вас есть проект с именем Foo, который находится в пакете, который также называется foo.
В setup.py добавьте 'foo' в список 'paster_plugins'
Затем добавьте новую команду в entry_points.
т.е.
entry_points = ""»
[Paste.paster_command]
mycommand = foo.commands.test_command: Test
"" "
Создайте каталог с именем 'groups' в 'foo', добавьте файл __init.py__ и создайте файл с именем test_command.py
В файл добавить
from paste.script import command
class TestCommand(command.Command):
max_args = 1
min_args = 1
usage = "NAME"
summary = "Say hello!"
group_name = "My Package Name"
parser = command.Command.standard_parser(verbose=True)
parser.add_option('--goodbye',
action='store_true',
dest='goodbye',
help="Say 'Goodbye' instead")
def command(self):
name = self.args[0]
if self.verbose:
print "Got name: %r" % name
if self.options.goodbye:
print "Goodbye", name
else:
print "Hello", name
После того, как вы запустите 'python setup.pyvelop', вы можете запустить 'paste mycommand bob' и получите вывод 'Hello bob'.
Чтобы увидеть, как Pylons добавляет это для создания новых файлов и т. Д., Посмотрите в pylons / commands.py у них есть команды для создания новых контроллеров и контроллеров RestController, которые вы можете скопировать.