pylons.commands
– Command line functions¶Paster Commands, for use with paster in your project
The following commands are made available via paster utilizing setuptools points discovery. These can be used from the command line when the directory is the Pylons project.
Commands available:
controller
restcontroller
shell
Example usage:
~/sample$ paster controller account
Creating /Users/ben/sample/sample/controllers/account.py
Creating /Users/ben/sample/sample/tests/functional/test_account.py
~/sample$
How it Works
paster is a command line script (from the PasteScript
package) that allows the creation of context sensitive commands.
paster looks in the current directory for a
.egg-info
directory, then loads the paster_plugins.txt
file.
Using setuptools entry points, paster looks for
functions registered with setuptools as
paste.paster_command()
. These are defined in the entry_points
block in each packages setup.py
module.
This same system is used when running paster create to determine what templates are available when creating new projects.
pylons.commands.
ControllerCommand
(name)¶Create a Controller and accompanying functional test
The Controller command will create the standard controller template file and associated functional test to speed creation of controllers.
Example usage:
yourproj% paster controller comments
Creating yourproj/yourproj/controllers/comments.py
Creating yourproj/yourproj/tests/functional/test_comments.py
If you’d like to have controllers underneath a directory, just include the path as the controller name and the necessary directories will be created for you:
yourproj% paster controller admin/trackback
Creating yourproj/controllers/admin
Creating yourproj/yourproj/controllers/admin/trackback.py
Creating yourproj/yourproj/tests/functional/test_admin_trackback.py
pylons.commands.
RestControllerCommand
(name)¶Create a REST Controller and accompanying functional test
The RestController command will create a REST-based Controller file
for use with the resource()
REST-based dispatching. This template includes the methods that
resource()
dispatches to in
addition to doc strings for clarification on when the methods will
be called.
The first argument should be the singular form of the REST resource. The second argument is the plural form of the word. If its a nested controller, put the directory information in front as shown in the second example below.
Example usage:
yourproj% paster restcontroller comment comments
Creating yourproj/yourproj/controllers/comments.py
Creating yourproj/yourproj/tests/functional/test_comments.py
If you’d like to have controllers underneath a directory, just include the path as the controller name and the necessary directories will be created for you:
yourproj% paster restcontroller admin/tracback admin/trackbacks
Creating yourproj/controllers/admin
Creating yourproj/yourproj/controllers/admin/trackbacks.py
Creating yourproj/yourproj/tests/functional/test_admin_trackbacks.py
pylons.commands.
ShellCommand
(name)¶Open an interactive shell with the Pylons app loaded
The optional CONFIG_FILE argument specifies the config file to use for the interactive shell. CONFIG_FILE defaults to ‘development.ini’.
This allows you to test your mapper, models, and simulate web requests
using paste.fixture
.
Example:
$ paster shell my-development.ini