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
"""
在 'foo' 下创建一个名为 'commands' 的目录,添加一个 __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.py develop”后,您现在可以运行“paste mycommand bob”,您应该会得到“Hello bob”输出。
要查看 Pylons 如何添加到此以创建新文件等。请查看 pylons/commands.py,它们有用于创建新控制器和 RestController 的命令,您可以复制这些命令。