Commands
In glim, there is a command line utility layer where you can define command line apps that can be run from terminal. In a typical glim app, all command line apps reside in app/commands.py. In this file, all commands are extended from Command class in glim.command module.
This command layer uses ArgumentParser object of argparse module. Consider the examples of Hello & Greet commands. Hello command just prints "Hello World!" and Greet command takes an user name argument prints "hello :name";
# commands.py
from glim.command import Command
class HelloCommand(Command):
name = 'hello'
description = 'prints hello world'
def configure(self):
pass
def run(self):
print("Hello World!")
pass
class GreetCommand(Command):
name = 'greet'
description = 'greets a user'
def configure(self):
self.add_argument("name", nargs='?',
help="enter project name",
default=None)
def run(self):
print("Hello %s!" % self.args.name)These commands are automatically registered when you run glim from command line. The following outputs will be appeared on glim commands;
$ glim hello
Hello World!
$ glim greet aras
Hello Aras!In a typical Command, self.add_argument(*args, **kwargs) would create an argument using ArgumentParser. You can see more examples of argument adding here.
Register arguments in only configure functionYou can only register arguments inside the configure function.
Updated 10 months ago
.png)